1[填空题]从键盘输入一组无符号整数并保存在数组xx[M]中,以整数0结束输入,即第M+1个数是0(共M个数据),数与数之间以Enter键分隔,要求这些数的最大位数不超过4位,其元素的个数通过变量num传人函数proc()。请补充函数proc(),该函数的功能是:从数组XX中找出十位和百位的数字之和大于5的所有无符号整数,结果保存在数组yy中,其个数由函数proc()返回。
例如,当xx[8]={3 637 369 421 35 7334 54 67}时,bb[4]={637 369 421 7334 67)。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填人所编写的若干表达式或语句。
试题程序:
参考解析:
【1】xx[i]/100【2】bb[n++]=xx[i]【3】n
从数组XX中找出十位和百位的数字之和大于5的所有无符号整数,首先要得到每一个整数十位和百位的数字。要得到一个整数十位和百位的数字,可以通过取余来实现,因此,【1】处填“xx[i]/100”;每得到一个符合要求的整数,放在数组bb中,因此,【2】处填“bb[n++]=xx[i]”;变量n中存放的是符合要求的个数,最后返回各主函数,因此【3】处填“n”。
2[单选题] 若变量已正确定义
for(x=0,Y=0;(y!=99&&x<4);x++)
则以上for循环
A.执行3次B.执行4次C.执行无限次D.执行次数不定
参考答案:B
参考解析:本题重点考查for语句的循环次数,for(x=0,y=0;(y!=99&&x<4);x++),y!=99&&x<4即循环条件当y不等于99以及x<4时,执行循环语句,当有一个条件不成立时,均结束循环,因此循环4次,B选项正确。
3[单选题] 以下叙述中错误的是
A.用typedef可以说明一种新的类型名
B.typedef的作用是用一个新的标识符来代表已存在的类型名
C.可以用typedef说明的新类型名来定义变量
D.typedef说明的新类型名必须使用大写字母,否则会出编译错误
参考答案:D
考解析:本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,新类型可以使用小写,所以D选项错误。
4[简答题]规定输入的字符串中只包含字母和*号。编写函数fun(),其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为“****A*BC*DEF*G****”,删除后,字符串中的内容应当是“ABCDEFG”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数fun()的花括号中填入编写的若干语句。
试题程序:
参考解析:
【解析】此题是删除字符串中的星号。思路是通过for循环来完成对字符串的遍历,通过if判断,找到不是“*”的字符,将其赋值到数组a中星号前的位置,“if(a[i]!= ˊ*ˊ)”“a[j++]=a[i]”,最后返回主函数将删除*后的字符串输出即可。
5[单选题] 下列变量声明合法的是( )。
A.short a=1.4e-1;
B.double b=1+3e2.8;
C.10ng do=0xfdaL;
D.float 2_ aaa=1e-3;
参考答案:A
参考解析:解答本题需了解3个知识点:①标识符是由字母、数字或下划线组成,并且它的第一个字符必须是字母或者下划线;②do是C语言的一个关键字,不能再用作变量名和函数名;③C语言规定指数形式的实型数量e或E后面的指数必须是整数。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |