高级程序设计(实习基础类试题)

高级程序设计(实习基础类试题)
高级程序设计(实习基础类试题)

《高级程序设计》实习

基础类编程题目

(顺序结构类题目)

1、(数字处理)输入一个三位整数x(999=>x>=100),将其分解出百位、十位、各位,并求出各位之和以及各位之积。

2、要将"Program"译成密码,译码规律是:用原来字母后面的第5个字母代替原来的字母.例如,字母"A"后面第5个字母是"F"."F"代替"A"。

(选择结构类题目)

3、编程实现以下功能:读入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可为+,-,*,/(用switch语句实现)。

(题目可扩充到四则混合运算,可以将“+、-、*、\”以及“()”考虑进去)

4、编一程序,对于给定的一个百分制成绩,输出相应的五分值成绩。设90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60分以下为'E'(用switch语句实现)。

(循环结构类题目)

5、求Sn=a+aa+aaa+------+aaaaaaa(n个a),其中a和n都从键盘中输入,如从键盘中输入2,5,则计算S5=2+22+222+2222+22222。

(要求使用三种循环语句分别完成)

6、韩信点兵。

韩信有一队兵,他想知道有多少人,便让士兵排队报数:按从1至5报数,最末一个士兵报的数为1;按从1至6报数,最末一个士兵报的数为5;按从1至7报数,最末一个士兵报的数为4;最后再按从1至11报数,最末一个士兵报的数为10。编程求韩信至少有多少兵?

7、打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

8、(穷举算法)古希腊人认为因子的和等于它本身的数是一个完全数(自身因子除外),例如28的因子是1、2、4、7、14,且1+2+4+7+14=28,则28是一个完全数,编写一个程序求2-1000内的所有完全数。

9、(穷举算法)(钱币问题)在日常生活中常常需要用一些较小面额的钱币去组合出一定的币值。现有面值为1元、2元和5元的钞票(假设每种钞票的数量都足够多),从这些钞票中取出30张使其总面值为100元,问有多少种取法?每种取法的各种面值的钞票各为多少张?

(数组类题目)

10、已知一组字符串a[10]=”abCDefGHi”,将其中的小写字母改写成大写字母。

11、已知有20个两位正整数的数组a[20]={10,11,12,13,14,19,18,17,16,15,20,21,22,23,24,29,28,27,26,25},编一程,将数组a中满足:个位数加十位数是偶数的元素赋给数组b[],并对数组b[]从小到大排序打印。例:11,13。

12、(排序)已知有20个两位正整数的数组a[20]={10,11,12,13,14,19,18,17,16,15,20,21,22,23,24,29,28,27,26,25},从键盘输入上述数组a中的某个数,编写一程序,将该数从数组a中删除掉,将删除后该数的数组a打印。

(编程思路:需要考虑键盘输入的数在数组中的位置,可能的位置是输入的数值为10,刚好是数组第一个元素;可能是数组a中间的某个数值;可能是数组a最好一个数值25,整个处理都不相同)

13、(排序)已知一组字符串a[20]="yyzzabcdefYYZZABCDE"; 编一程,将其中的小写字母换成下一个字母,即a换成b,b换成c,z换成a。然后对数组a[20] 从小到大排序。

14、已知一组字符串a[20]="yyzzabcdefYYZZABCDE"; 编一程,将其中的大字母换成下一个字母,即A换成B,B 换成C,Z换成A。然后对数组a[20] 从小大到小排序。

15、已知有20个两位正整数的数组a[20]={10,11,12,13,14,19,18,17,16,15,20,21,22,23,24,29,28,27,26,25},编一程,将数组a中满足:个位数减十位数>0 的元素赋给数组b[],并对数组b[]从小到大排序打印。例:12,13。

16、(排序)有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中。

17、(矩阵与二维数组)将M行N列的二维数组中的数据, 按列的顺序依次放到一维数组中。

例如, 二维数组中的数据为:

33 33 33

44 44 44

55 55 55

则一维数组中的内容应是:

33 44 55 33 44 55 33 44 55

18、假定输入的字符串中只包含字母和*号。请编写程序,它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。

例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:****A*BC*DEF*G

19、求3×3矩阵的最小值并输出。例如,当矩阵为:1 2 3 4 9 5 7 8 6 则最小值为:1 (进制转换问题)

20、一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码顺序正好相反,求这个三位数。

(函数类题目)

21、写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。

22、(函数+数组)写一个函数,求一维数组a中的奇数个数,在主函数中调用函数并输出结果。

23、写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。在主函数中调用该函数并输出,如输入1990,应输出“1 9 9 0”。

24、(函数+字符串)编写一个函数,由实参传来一个字符串,统计此字符串中字母的个数,在主函数中输入字符串以及输出结果。

25、(函数+数组)写一个函数,求出a所指数组中最大数(规定最大数不在a[0]中),并且将最大数和a[0]中的数对调。在主函数中调用函数并输出结果,例如数组中原有的数为:7、10、12、0、3、6、9、11、5、8, 输出的结果为:12、10、7、0、3、6、9、11、5、8。(指针+函数类题目)

26、有一个数组int p[nSize],要求写一个函数:

Void myfunc (int *p, int nSize);

将p中的0都移至数组末尾,将非0的移至开始(保持原来的顺序不变)。例如:

A原来是:1, 0, 3, 4, 0, -3, 5

经过myfunc处理后为:1, 3, 4, -3, 5, 0, 0

27、编写函数void fun (int x,int * pp,int *n),它的功能是:求出x的偶数因子,并按从小到大的顺序放在pp所指的数组中,这些因子的个数通过形参n返回(假设pp指向足够大的空间)。如,若x中的值为24,则有6个数符合要求,它们是2,4,6,8,12,24。

28、编一个函数fun(int *a,int n,int *odd,int *even),函数的功能是分别求出数组中所有奇数之和以及所有偶数之和。形参n给了数组中数据的个数:利用指针odd返回奇数之和,利用指针even返回偶数之和。例如:数组中的值依次为:1,8,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even返回偶数之和8。

29、编写一个函数int flength(char *s),计算字符串s的长度

(文件操作类题目)

30、有5个学生,每个学生有3门课程的成绩,从键盘输入学生数据(包括学号、姓名、3门课成绩),计算平均成绩,将原有数据和计算出的平均分数存放在磁盘文件”stud.txt”中。(函数类题目)

31、(函数+数组)写一个函数,求一维数组a中的最小元素及其下标。例如,当一维数组a中的元素为:1,4,2,7,3,12,5,34,5,9,程序的输出应为:The min is: 1,pos is: 0 。用主函数调用这个函数,并输出结果。

32、写一个判完数的函数,在主函数输入一个整数,输出是否为完数的信息。所谓完数,就是指一个正整数,它的各因数之和等于其自身。例如,28=1+2+4+7+14,28是一个完数。

33、(函数+数组)写一个函数,求4*4矩阵的第2行(以下标为行数)元素的和。在主函数中调用这个函数并输出结果。

34、写一个函数,求[1,M](10

(指针+函数类题目)

35、编写函数void fun(int m,int *sum),功能是:求一个三位整数m的每位数之和sum,m的值由键盘输入。

36、(指针+函数+数组)编写函数double fun(double *a),求一维数组a中所有元素的平均值。

37、编写函数void fun(char *str1), 将字符串中所有的小写字母转换为大写,其它字符不变(不使用转换函数)。

38、编写函数int fun(char *str1),统计字符串中元音字母’a’、’e’、’i’、’o’、’u’的个数。

(结构体类题目)

39、编写程序通过定义学生结构体数组,存储了若干个学生的学号、姓名和三门课的成绩。函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大排序)。

40、学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。

41、人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中编号为空串。

42、已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写给函数fun,函数的功能是:找出成绩最高的学生的记录,通过形参指针传回主函数(规定只有一个最高分)。

(指针+函数类题目)

43、编写函数void fun(char *s,int n),求[1,n]之间所有不能被3整除的整数之和s,n 的值由键盘输入。

44、编写函数int fun(char *a,int n),计算机数组a中最小元素的下标并返回。

45、编写函数fcopy(char *s,char*t),实现字符串复制(不使用字符串拷贝函数)。

46、编写函数fncopy(char *s,char*t,int n),实现将字符串s中的前n个字符复制到

字符串t中。

47、编写函数void fun(char *s,int n ,char *t,int m),实现功能将字符串s(包含n个字符)中从m个字符开始的字符复制到另外一个字符串t中。

(结构体+文件类题目)

48、程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生书数据,并按照从小到大排序后,再用二进制方式把排序后的学生数据输出到filename 所指的文件中,覆盖原来的文件内容。

(文件操作类题目)

49、从键盘输入一个字符串,将其中的小写字母全部转换为大写字母,然后输出到一个磁盘文件“test.txt”中保存,输入的字符以“!”结束。

50、有两个磁盘文件“A”和“B”,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件“C”中去。

基本要求:

(1)所有程序命名为“题号.c”。

(2)提交基础类题目时,将所有扩展名为“.c”的文件拷贝在一个文件夹,打包后提交。

(3)前30道题目为必做题,每位同学都需完成,占60%。

(4)后20题为选做题,完成31题~40题,占10%;完成41题~50题,占10%。

(5)综合题占20%。

程序设计实训心得体会

程序设计实训心得体会 心得体会这种学习方法对于一个人来说也许是优秀的,但没有被推广普及的必要。因为学习的方法因人而异,方法的奏效是它与这个人相适应的结果,以下《程序设计实训心得体会》由心得体会栏目为您精心提供。 在软件实验室经过2个星期Jsp程序设计实训,从对软件开发没有太多经验的我掌握了更多的软件开发的方 法和技能,收获颇多。 经过这次理论学习,了解到要做好软件开发,要求 掌握的知识并不是只有编写代码方面的,网络、数据库、操作系统等的知识对做好项目开发是很有帮助的。这让 我明确了以后学习的目标,在不断学习软件开发的同时,也应该继续其他相关知识的深入学习。 实训期间经历的许许多多,给我们带来了很多很多 有实无形的东西,知识、友情以及团队开发的热情,快 乐无一不包围着我们。在这我很想感谢几个人,王璐老 师和班上一同参与这次实训的2位同学。王璐老师对我 们备至关心,不论在学习前后,都给予我们关怀不少, 并且王璐老师不愧是从事多年软件开发的专业人士,其 深厚的专业技能知识和丰富的经验令我等钦佩无比。对 于我们未出茅庐的大学生而言,遇到的问题多而复杂,

询问有经验的人,他们或许一句话就能解决问题,而自 己就得找资料或上网摸索可能要一两天,有时甚至绞尽 完脑汁都不得其解。用个词形容,老师的解答如醍醐灌顶,而对我们,则甘之如饴。 实训这段期间真的好累,尽管实验室给我们提供了 一个相当不错的上课学习环境,但是整天木木地待在实 验室面对毫无生气的荧屏,为 code而烦恼,为bug而郁闷,被文档所包围,随程序侵蚀。然而,这就是学习的 生活,既选之也则安之。忙碌的生活让我每天似乎没有 太多的时间去想一些其他的事,耐心的去调试,专注的 去编写更好的算法,沉浸充实和快乐之中。 更重要的是,两个星期的实训使我们明白我们所欠 缺的不仅仅是技术知识,更重要的是有一种处理事情的 方法、面对问题的心态和动手能力。面对完全陌生的新 知识、新技术、新项目以及整个IT行业,我们不能畏惧,要以一种积极的心态去面对,分析并抓住关键所在。因 为我们所即将应对的每一个项目都是既需要实际操作, 又需要详细规划的。作为组长,协调组员、激励其他组 员和积极参与项目开发是我每天必做的工作。我认为每 个人都应该在团队中做好自己应尽的职责,再优秀的个 人也可能完成一个即庞大又复杂的项目工作,我们必需 紧密的联合在一起,以一个团队的角色来面对。

程序设计基础试题库

练习题一Visual FoxPro 基础 、选择题 1. 关系数据库管理系统应能实现的专门关系运算包括___c __________ A 显示、打印、制表B关联、更新、排序 C 选择、投影、连接D排序、索引、统计 2. 关系是指__b__。 A 属性的集合B元组的集合 C 实例的集合 D 字段的集合 3. 如果把学生看成实体,某个学生的姓名叫“杨波”,则“杨波”应看成是___b ______ 。 A)属性型B )属性值C )记录型D )记录值 4. 关系数据库系统中所使用的数据结构是 _______ d ___ 。 A)图B )树C )表格D )二维表 5. 对表进行水平方向的分割用的运算是 _______ b ___ 。 A)交B )选择C )投影D )连接 6. 下列数据库技术的术语与关系模型的术语的对应关系中_______ d _____ 是正确的。 A)实例与关系 B )字段与元组C )记录与属性 D )记录类型与关系模式 7. 下列关于数据库系统的叙述中,正确的是 _____ c _____ 。 A)数据库系统中数据的一致性是指数据类型一致 B)数据库系统只是比文件系统管理的数据更多 C)数据库系统减少了数据冗余 D数据库系统避免了数据冗余 8. 关系数据模型 ______ d ___ 。 A)只能表示实体间的1:1联系 B)只能表示实体间的1:n C只能表示实体间的m:n D 可以表示实体间的上述三种联系 9. 在一个关系中如果有这样一个属性存在,它的值能惟一地标识关系中的每一个元组,称

这个属性为 _____ a____ 。 A)关键字B )主属性C )数据项D )主属性值 10. 关系数据库管理系统中的元组是______ b ____ 。 A)关系中的垂直方向的列 B )关系中的水平方向的行 C属性或属性的组合 D )以上的答案均不正确 11. 从数据库的整体结构看,数据库系统采用的数据模型有_________ a __ 。 A)层次模型、网状模型和关系模型 B)层次模型、网状模型和环状模型 C)网状模型、链状模型和层次模型 D链状模型、关系模型和层次模型 12. 设有属性A B、C D以下表示中不是关系的是___________ d__。 A)R( A) B )R( A, B)C )R (A, B, C, D) D )R (A X B X C X D) 13. 若实体间联系是M N的,则将联系类型_________ a___ 。 A)也转换为关系模型 B)属性加入任一个关系模式中 C)属性加入N端实体类型相应的关系模式中 D)属性加入M端实体类型相应的关系模式中 14. 数据库系统的构成为数据库、计算机硬件系统、用户和________ a ____ 。 A 数据库管理系统 B 操作系统 C 数据集合 D 文件系统 15. 层次型、网状型和关系型数据库划分原则是________ c ___ 。 A 文件大小 B 记录长度 C 数据之间的联系 D 联系的复杂程度 16. 在数据库设计中用关系模型来表示实体和实体之间的联系,关系模型的结构是 _____ d ___ 。 A 封装结构 B 层次结构 C 网状结构 D 二维表结构 17. 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过__a ________ 。 A 主键 B 超键 C 外键 D 候选键 18. 层次模型不能直接表示 ______ b __ 关系。 A 1:1 B m:n C 1:m D 1:1 和1:m 19. DBAS旨的是_____ d____ 。

程序设计实验报告

学生实验报告 院系:测绘学院 专业班级:测绘13级3班 学号:2013305517 学生姓名:王泽 指导教师:郭辉老师 2016年05月20日

安徽理工大学实验报告 实验课程名称:数据结构与软件开发上机实验 开课院系及实验室:测绘学院红楼二楼机房 实验1 编程基本知识练习 实验目的: 通过该实验课内容的练习,学生应掌握VB 编程的基本语法、变量的定义、数组(动态数组)的定义、VB 语言中子过程与函数的定义以及文本文件的读写等知识。 实验内容: 1)变量的定义动态数组的定义与应用; 2)矩阵的加、减、乘运算(定义Sub()子过程或Function()来实现); 3)数据文件的建立、数据的读取与写入。 实验步骤: 1.编辑界面 1.1 打开VB 编程工具,进入编程主界面。

1.2 在窗体上新建“读入数据”和“输出数据”两个按钮。 1.3 双击“窗体”进入代码输入界面,进行代码编辑。 2.用VB 编写的源代码 2.1 矩阵基本运算源码详见附录一。 (1)两矩阵相加 (2)两矩阵相减 (3)矩阵转置 (4)两矩阵相乘 (5)矩阵求逆 2.2 文本文件(本实验中data.txt)的读取源代码 (1)建立文本文件并输入数据 在桌面上新建一“data.txt” ( 文本文件路径为C:\Users\ WH\Desktop\练习\data.txt”)。输入以下内容: 6,7,4,0.005 A,35.418 B,45.712 C,25.270

D,24.678 在桌面上新建一“result.txt” ( 文本文件路径为C:\Users\ WH\Desktop\练习\result.txt”)。(2)从文本文件中读数据 Dim linedata as string, m_GaochaN as integer,m_Pnumber as integer,m_knPnumber as integer,M as Double,k1 as integer 'linedata 为存储文本文件一行信息的字符串变量 Dim a() as String,H() as Double 'a()为存储点名,H()存储高程 Open“C:\Users\ WH\Desktop\练习\data.txt”For Input As #1 Line Input #1, linedata k = Split(linedata, ",") m_GaochaN = Val(k(0)) m_Pnumber = Val(k(1)) m_knPnumber = Val(k(2)) M = CDbl(k(3)) For k1 = 1 To m_knPnumber Line Input #1, linedata k = Split(linedata, ",") a(k1)= k(0) GetstationNumber (a) H(k1) = CDbl(k(1)) Next Close #1 (3)将读入点名存储到点名数组中,且返回该点名所对应编号 Function GetstationNumber(name As String) Dim i As Integer For i = 1 To m_Pnumber If P_Name(i) <> "" Then '将待查点名与已经存入点名数组的点比较 If P_Name(i) = name Then GetstationNumber = i Exit For End If Else '待查点是新的点名,将新点名放到P_Name 数组中 P_Name(i) = name GetstationNumber = i Exit For End If Next i End Function (4)从文本文件中写数据(将从data.txt 读入的数据,写入到result.txt 文件中) Open“C:\Users\ WH\Desktop\ 练习\result.txt” For Output As #1 outstring = outstring + str(m_GaochaN) +","

全国高等教育自学考试高级语言程序设计

全国高等教育自学考试高级语言程序设计 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

2001年10月全国高等教育自学考试高级语言程序设计(一) 试卷 第一部分选择题 一、单项选择题 (本大题共20小题,每小题1分,共20分) 在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。 1. C语言程序编译时,程序中的注释部分【】 A. 参加编译,并会出现在目标程序中 B. 参加编译,但不会出现在目标程序中 C. 不参加编译,但会出现在目标程序中 D. 不参加编译,也不会出现在目标程序中 2. 下列表达式的值为0的是【】 A. 3﹪5 B. 3/ C. 3/5 D. 3<5 3. 正确的C语言用户自定义标识符是【】 A. print B. float C. when?

D. random﹪2 4. 设int a = 3;则表达式a<1&& - - a>1的运算结果和a的值分别是【】 A. 0和2 B. 0和3 C. 1和2 D. 1和3 5. 下列叙述中,正确的是【】 A. 引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致 B. 宏名必须用大写字母表示 C. 宏替换不占用运行时间,只占编译时间 D. 在程序的一行上可以出现多个有效的宏定义 6. 下列保留字中用于构成循环结构的是【】 A. if B. while C. switch D. default 7. 与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是【】 A. if(a>b){if(c>d) x = 1;else x = 2;} B. if(a>b){if(c>d) x = 1;} else x = 2;

《高级语言程序设计》复习题及答案

一、选择题 1.以下叙述正确的是( ): A)在C程序中,main函数必须位于程序的最前面 B) C程序的每行只能写一条语句 C) C语言使用库函数实现输入输出操作 D)注释中的拼写错误会影响编译结果 2、以下说法中正确的是() A) C语言程序总是从第一个的函数开始执行 B) C语言程序总是从main()函数开始执行 C)在C语言程序中,要调用的函数必须在main()函数中定义 D)C语言程序中的main()函数必须放在程序的开始部分 3、下列选项种说法正确的是( ) A)函数由声明部分和执行部分两部分组成 B)语言中main函数一定在程序的开始部分 C)C语言程序总是从第一个定义的函数开始执行 D)C程序的每行中只能写一条语句 4、设有说明:int a;float b; char c; double d; 则表达式1.3*a+2*b*c+d*(int) 2.6 值的类型为( )。 A)doubleB) char C) floatD) int 5、C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( ) A)必须为字母 B)必须为下划线 C)必须为字母或下划线 D)可以是字母、数字和下划线中任一种字符 6、以下不正确的C语言标识符是( )。 A) ABC B) abc C)a_bc D) void 7、下列运算符中优先级最高的是( ) A)< B)+ C)&& D)!= 8、以下选项中属于C语言中合法关键字的是( ) A)Float B)abc C)int D)CASE 9、若x、i、j和k都是int型变量,计算下面表达式后,x的值为( ) x=(i=4,j=16,k=32) A)4 B)16 C)32 D)52 10、在C语言中,要求数据必须是整型的运算符是( ) A)/ B)+ + C)!=D) % 11、若整型变量x的值为8,则下列表达式中值为1的表达式是 A)x+=x-=x B) x%=x-1 C) x%=x%=3 D) x/=x+x 12、若w=1,x=2,y=3,z=4,则条件表达式“w > x? w : y< z ? y : z”的值是( ) A)4 B)3 C)2 D)1 13、有以下程序,程序运行后的输出结果是。 main() {inti=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf("%d %d %d\n",i,j,k); }

程序设计基础练习题(全答案版)

《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.360docs.net/doc/f9808039.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统 2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。 A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”) C. System.Console.WriteLine(“x={0}”,x) D. System.Console.WriteLine(“x={x}”) 3.要退出应用程序的执行,应执行下列的_A___语句。 A. Application.Exit(); B. Application.Exit; C. Application.Close(); D. Application.Close; 4.关于C#程序的书写,下列不正确的说法是__D________。 A.区分大小写 B.一行可以写多条语句 C.一条语句可以写成多行 D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 5. 在C#语言中,下列能够作为变量名的是__C__。 A.if B. 3ab C. b_3a D. a-bc 7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。 A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0 8. 以下程序的输出结果是___C_____。 A. 5 B. 4 C. 6 D. 不确定 9. If语句后面的表达式应该是__A___。 A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序:

C程序设计实训报告

C程序设计实训报 告

实训一:类和对象的定义及使用 实训目的: (1)掌握类与对象的定义与使用方法,理解面向对象方法中经过对象间传递消息的工作机制。 (2)正确掌握类的不同属性成员的使用方法。 (3)掌握构造函数与析构函数的概念,理解构造函数与析构函数的执行过程。 (4)掌握友元函数和友元类的定义和使用。 (5)基本掌握指针和引用作为函数参数的应用。 实训内容: 定义一个时间类Time,有三个私有成员变量Hour、Minute、Second,定义构造函数、析构函数以及用于改变、获取、输出时间信息的公有函数,主函数中定义时间对象,并经过调用各种成员函数完成时间的设定、改变、获取、输出等功能。 ①按要求完成类的定义与实现。 ②修改数据成员的访问方式,观察编译结果。 ③在Time类中定义一个成员函数,用于实现时间增加一秒的功能,主函数中经过对象调用该函数,并输出增加一秒后的时间信息。 ④定义一个普通函数。

void f(Time t) { t. PrintTime( ); } 在Time类中增加拷贝构造函数的定义,主函数中调用该函数,运用调试工具跟踪,分析整个程序调用构造函数(包括拷贝构造函数)和析构函数的次数;再将f函数的形式参数分别修改为引用参数和指针参数(此时函数代码修改为{t-> PrintTime( );},主函数中调用,再分析此时调用构造函数和析构函数的次数。 实训代码: #include using namespace std; class Time { private: int Hour,Minute,Second; public: Time(int h=0,int m=0,int s=0); Time(const Time &ob); ~Time(); void ChangeTime(int h,int m,int s);

自考高级语言程序设计复习题

2013年海南省衔接课程考试 高级语言程序设计复习题 一、单项选择题(在每小题列出的四个选项中只有一个是符合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。) 1、在以下给出的表达式中,与while E中的E不等价的表达式是()。 A)(!E=0) B)(E>0||E<0) C)(E==0) D)(E!=0) 2、若x和y是代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是()。 A)abs(x-y)<10 B)x-y>-10&&x-y<10 C) @(x-y)<-10||!(y-x)>10 D)(x-y)*(x-y)<100 3、以下能够正确判断char型变量c是否为大写字母的表达式是()。 A) (‘A’<=c)AND (‘Z’>=c) B)(‘A’<=c)& (‘Z’>=c) C)(‘A’<=c) && (‘Z’>=c) D)以上答案都不对 4、下列叙述正确的是()。 A) break语句只能用于switch语句 B)在switch语句中必须使用default C) break语句必须与switch语句中的case配对 D)在switch语句中,不一定使用break语句 5、以下选项中,不能看作一条语句的是()。 A){ ;} B)a=0,b=0,c=0; C) if(a>0); D)if(b==0) m=1;n=2; 6、以下程序段中与语句k=a>b?(b>c?1:0):0)功能等价的是()。 A) if(a>b&&(b>c)) k=1; B) if(((a>b)||(b>c)) k=1; else k=0; else k=0; C)if(a<=b) k=0; D)if(a>b) k=1; else if(b<=c) k=1; else if(b>c) k=1; else k=0; 7、若有以下程序: main() { int y=10; while(y--); printf(“y=%d\n”,y); }

《高级语言程序设计》答案

1. 输入两个整数,要求用两个函数求出其最大公约数和最小公倍数,最大公约数和最小公倍数都在主函数中输出。#include int main() { int i,j,t; int max(int,int); int min(int,int); scanf("%d%d",&i,&j); if(i int main() { int max4(int,int,int,int); //对max4的函数声明 int a,b,c,d; scanf("%d%d%d%d",&a,&b,&c,&d); //输入4个数 printf("max=%d\n",max4(a,b,c,d));//调用4个数中的最大者 return 0; } int max4(int a,int b,int c,int d) //定义max4函数 { int max2(int,int); //对max2的函数声明 return max2(max2(max2(a,b),c),d); //调用max2把作为函数值带回main函数} int max2(int a,int b) { return(a>b?a:b); //返回条件表达式的值,即a和b中的大者 } 3. 用递归调用的方法求5!。 #include int main() { int fac(int); int n; scanf("%d",&n);

计算机程序设计基础习题册含答案

《计算机程序设计基础》 计算机程序设 计基础_基础知识(一) 班级 学号 姓名 成 绩 一、 单选题 习题册

1.C++源程序文件的默认扩展名为A。 2.A) cpp B) exe C) obj D) lik 3.由C++源程序文件编译而成的目标文件的默认扩展名为C。 4.A) cpp B) exe C) obj D) lik 5.由C++目标文件连接而成的可执行文件的默认扩展名为B。 6.A) cpp B) exe C) obj D) lik 7.编写C++程序一般需经过的几个步骤依次是B。 8.A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接9.程序中主函数的名字为 A 。 10.A) main B) MAIN C) Main D) 任意标识 符 11.下面四个选项中,均是不合法的 用户标识符的选项的是 C。 12.A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 13.下列变量名中合法的是 C。 14.A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 15.存储以下数据,占用存储字节最 多的是 D 。 16.A) 0 B) ‘0’

C) “0” D) 17.在C++语言中,字符型数据在内存中的存储形式是D。 18.A) 补码 B) 反码 C) 原码 D) ASCII码 19.若有说明语句:char c =’\072’;则变量c A。 20.A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 计算机程序设计基础_基础知识(二) 班级学号姓名成绩 一、单选题 1.下列哪一个是C++语言中合法的变量 C A) 8ZSe B) ±A0 C) X0_2 D) ’x0’2.已知ch是字符型变量,下面不正确的赋值语句是A 3.A) ch='a+b' B) ch='\0'

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

程序设计基础试题(附答案)

程序设计基础复习题 一、单选 1、一个完整的计算机系统应该包括() A、系统软件和应用软件 B、计算机及其外部设备 C、硬件系统和软件系统 D、系统硬件和系统软件 2、“裸机”的概念是指() A、正在进行设计还没有组装好的计算机 B、已经组装好但还没有安装任何软件的计算机 C、仅安装了操作系统的计算机系统 D、安装了文字处理软件但没有安装专用数据处理系统的计算机 3、世界上第一台电子数字计算机研制成功的时间是() A、1936年 B、1946年 C、1956年 D、1970年 4、CASE的含义是() A、计算机辅助设计 B、计算机辅助制造 C、计算机辅助教学 D、计算机辅助软件工程5、当前广泛使用的微型计算机是() A、第一代 B、第二代 C、第三代 D、第四代 6、当代计算机的体系结构称为是() A、冯·诺依曼机 B、非冯·诺依曼机 C、图灵机 D、比尔盖茨机 7、硬盘是() A、输入设备 B、输出设备 C、存储设备 D、计算设备 8、下面4句话中,最准确的表述是() A、程序=算法+数据结构 B、程序是使用编程语言实现算法 C、程序的开发方法决定算法设计 D、算法是程序设计中最关键的因素

9、计算机能直接执行的语言是() A、机器语言 B、汇编语言 C、高级语言 D、目标语言 10、解释程序的功能是() A、将高级语言程序转换为目标程序 B、将汇编语言程序转换为目标程序 C、解释执行高级语言程序 D、解释执行汇编语言程序 11、下面4种程序设计语言中,不是面向对象式语言的是() A、JAVA B、Object Pascal C、Delphi D、C 12、不是C语言的基本数据类型是() A、int B、double C、char D、bool 13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符() A、/ B、% C、* D、++ 14、数据的逻辑结构分为() A、纯属结构和非线性结构 B、顺序结构和非顺序结构 C、树型结构和图型结构 D、链式结构和顺序结构 15、用链表表示纯属表的优点是() A、便于随机存取 B、便于插入和删除操作 C、花费的存储空间较顺序存储少 D、元素的物理顺序与逻辑顺序相同 16、栈的最主要特点是() A、先进先出 B、先进后出 C、两端进出 D、一端进一端出 17、下面4句结论只有一句是错误的,它是()

程序设计实训的个人心得体会

程序设计实训的个人心得体会 在软件实验室经过2个星期Jsp程序设计实训,从对软件开发没有太多经验的我掌握了更多的软件开发的方法和技能,收获颇多。 经过这次理论学习,了解到要做好软件开发,要求掌握的知识并不是只有编写代码方面的,网络、数据库、操作系统等的知识对做好项目开发是很有帮助的。这让我明确了以后学习的目标,在不断学习软件开发的同时,也应该继续其他相关知识的深入学习。 实训期间经历的许许多多,给我们带来了很多很多有实无形的东西,知识、友情以及团队开发的热情,快乐无一不包围着我们。在这我很想感谢几个人,王璐老师和班上一同参与这次实训的2位同学。王璐老师对我们备至关心,不论在学习前后,都给予我们关怀不少,并且王璐老师不愧是从事多年软件开发的专业人士,其深厚的专业技能知识和丰富的经验令我等钦佩无比。对于我们未出茅庐的大学生而言,遇到的问题多而复杂,询问有经验的人,他们或许一句话就能解决问题,而自己就得找资料或上网摸索可能要一两天,有时甚至绞尽完脑汁都不得其解。用个词形容,老师的解答如醍醐灌顶,而对我们,则甘之如饴。 实训这段期间真的好累,尽管实验室给我们提供了一个相当不错的上课学习环境,但是整天木木地待在实验室面对毫无生气的荧屏,为 code而烦恼,为bug而郁闷,被文档所包围,随程序侵蚀。然而,

这就是学习的生活,既选之也则安之。忙碌的生活让我每天似乎没有太多的时间去想一些其他的事,耐心的去调试,专注的去编写更好的算法,沉浸充实和快乐之中。 更重要的是,两个星期的实训使我们明白我们所欠缺的不仅仅是技术知识,更重要的是有一种处理事情的方法、面对问题的心态和动手能力。面对完全陌生的新知识、新技术、新项目以及整个IT行业,我们不能畏惧,要以一种积极的心态去面对,分析并抓住关键所在。因为我们所即将应对的每一个项目都是既需要实际操作,又需要详细规划的。作为组长,协调组员、激励其他组员和积极参与项目开发是我每天必做的工作。我认为每个人都应该在团队中做好自己应尽的职责,再优秀的个人也可能完成一个即庞大又复杂的项目工作,我们必需紧密的联合在一起,以一个团队的角色来面对。 总之,这次实训为我们以后从事软件开发工作打下了良好的专业基础,为我们的进一步学习提高打下了扎实的理论基础。 Jsp程序设计实训在不知不觉中就结束了,我感觉自己还有好多理论知识要学,还有好多的技术不懂呢!这是我大学以来第三次实训,每次实训我都感觉学到了好多东西!因为是一天到晚的不间断训练,所以记的会非常牢固。不像平时上课,每上两次的理论课却只有90分钟的实际操作。在课上,做的练习小项目都不复杂,可轮到做大的项目实训并且要求我们独立完成的时候,,就不那么顺手了,一个个技术问题,一个个bug接踵而至!我很感谢学校有实训这样的安排,把我们这一学期学的东西系统的集中的进行训练,对我们计算机水平

2020年10月全国高级语言程序设计(一)自考试题及答案解析.docx

??????????????????????精品自学考料推荐?????????????????? 全国 2018 年 10 月高等教育自学考试 高级语言程序设计(一)试题 课程代码: 00342 一、单项选择题(本大题共20 小题,每小题 1 分,共 20 分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括 号内。错选、多选或未选均无分。 1.下列不正确的转义字符是() . A. ′ ′ B. ′ ″ C. ′ \086′ D. ′ \0′ 2.下列运算符中,优先级最高的是() A. [] B.++ C.% D.&& 是 C 语言保留字的是 () 3.下列标识符中,不. A. char B. while C. min D. default 4.下列数据中,不.是 C 语言常量的是 () A. ′ \n′ B. ″ a″ C. e-2 D. 012 5.若定义了 int a; char b; float c ;,则表达式a*b-c 的类型是 () A. float B. int C. char D. double 6.若定义了 int a, x,y;,则下列语句中不.正确的是 () A. x=3 ,y=5 ; B. ++x ; C. x=y+=x*30 ; D. a=y+x=30 ; 7.调用函数时,若实参是一个数组名,则向函数对应的形参传送的是() A. 数组的长度 B.数组的首地址 C. 数组第一个元素的值 D. 整个数组元素的值 8.在 C 语言中,函数返回值的类型是由() A. 定义的函数类型决定 B.return 语句中表达式的类型决定 C.调用该函数的主调函数类型决定 D. 调用该函数时系统状态决定 9.若定义了 int b [][ 3]={ 1,2, 3,4, 5, 6, 7};,则 b 数组第一维的长度是 () A. 2 B. 3 C. 4 D.无确定值 1

(完整版)程序设计基础试题_10_答案

广州大学学年第学期考试卷 课程高级语言程序设计考试形式(开/闭卷,考试/查) 学院系专业班级学号姓名 一、填空题(每空1分,共10分) 1.C源程序的基本单位是(函数)。 2.一个C源程序中至少应包含一个(main()函数)。 3.若a和b均是int型变量,且a和b的初值均为5,则计算表达式a+=b++ 后,a的值为(10 ),b的值为( 6 )。 4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,b值为( 4 ),c 值为( 2 )。 5.表达式8.2-2/3 的计算结果是(8 )。 6.在C语言中,整数可用三种数制表示,它们分别是(十进制)、(八进制)和(十六进制)。 二、程序计算题(每小题5分,共15分) 1. # define f(a) printf(“%d”,a) main() { int i,b[]={1,2,3,5,7,9,11,13,15},*p=5+b; for(i=3;i;i--) switch(i) { case 1: case 2: f(*p++); break;

case 3: f(*(--p)); } } 2. main() { int arr_sum(int arr[],int n); int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total; int (*pt)( int arr[],int n); pt=arr_sum; p=a[0]; total=(*pt)(p,12); printf(“total=%d\n”,total); } arr_sum(int arr[],int n) { int i,sum=0; for(i=0;i

C语言程序设计实训报告

C语言程序设计实训报告班级:姓名:学号: 实训目的能力目标 全面熟悉、掌握C语言基本知识,掌握C程序设计中数组、函数、指针的操作,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,规范编程思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。 实训要求: (1)掌握C语言中的基本数据输入、输出; (2)熟练使用C语言中的数组; (3)熟练使用C语言中的函数; (4)熟练使用C语言中的指针; (5)熟练使用C语言中的结构体。 实训内容(过程及步骤) 设计题目:简单计算器 1、基本思路: 先自定义好加、减、乘、除、求余、求周长、求面积等函数。在写主函数调用前面的自定义函数,进行计算,选择好计算种类,输入2个数回车进行计算得到结果。 2、程序: #include"" #include""

{ floata[2]; printf("您选择了加法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g+%g=%g\n",a[0],a[1],a[0]+a[1]); } voidjianfa() { floata[2]; printf("您选择了减法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g-%g=%g\n",a[0],a[1],a[0]-a[1]); } voidcheng() { floata[2]; printf("您选择了乘法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g*%g=%g\n",a[0],a[1],a[0]*a[1]); } voidchu() { floata[2]; printf("您选择了除法\n"); printf("请输入:\n"); scanf("%f",&a[0]); scanf("%f",&a[1]); printf("%g/%g=%g\n",a[0],a[1],a[0]/a[1]); } voidyu() { inta[2]; printf("您选择了求余\n"); printf("请输入整数:\n"); scanf("%d",&a[0]); scanf("%d",&a[1]); printf("%d求余%d=%d\n",a[0],a[1],a[0]%a[1]); }

高级语言程序设计自考模拟10

[模拟] 高级语言程序设计自考模拟10 单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的。 第1题: 下列不属于面向机器语言的是( ) A.符号语言 B.二进制语言 C.汇编语言 D.C语言 参考答案:D 答案解析: 第2题: 设int b=2;表达式(b<<2)/(b>>1)的值是( ) A.2 B.4 C.6 D.8 参考答案:D 答案解析: 左移位运算移一位相当于乘2,右移位运算右移一位相当于除2。 第3题: 设置变量定义为:int a=0x53;int b=6;,求表达式~a|b的值(假定现有计算机字长为16)( ) A.82 B.-82 C.72 D.-72 参考答案:B 答案解析: 因计算机字长为16.故a的二制表示是0000000001010011,b的二进制表示是0000000000000110。运算符"~"自右向左结合,运算符"|"是自左向右结合;且运算符"~"的优先级高于运算符"|"的优先级,则进行计算的顺序是"(~a)|b"。最终计算结果是1111111101010010(十进制值为-82)。 第4题:

为了判定两个字符串是否相等应当使用( ) A.if(s1==s2) B.if(s1=s2) C.if(strcmp(s1,s2)==0) D.if(strcmp(s1,s2)=0) 参考答案:C 答案解析: 第5题: 设char c[5]={'a','b','\0','C','\0');则printf("%s",c);的输出是( ) A.'a''b' B.ab C.abc D."ab\0c" 参考答案:B 答案解析: 第6题: 以下程序的运行结果是( ) #include<stdio.h>main() { int a[]={1,2,3,4,5,6,7,8,9,10,11,12};int *p=&a[5],*q=NULL;printf("%d%d\n",*p,*q);} A.运行后报错 B.6 0 C.6 12 D.5 5 参考答案:A 答案解析: #include<stdio.h> main() { int a[]={1,2.3.4,5,6,7,8,9,10,11,12}; int*p=&a[5],*q=NULL; printf("%d%d\n",*P,*q);/*被置空的指针不能参与"*"运算*/ } 第7题: 当执行以下程序段时( ) do{y--;}while(--y) printf("%d\n",y--); A.循环体将执行一次 B.循环体将执行两次 C.循环体将执行无限次 D.系统将提示有语法错误

相关文档
最新文档