第 1 页:选择题 |
第 5 页:参考答案 |
21.B。【解析】struct date中包含year、month、day这3 个整型变量,一个整型变量占2个字节;sizeof是求所占字节数的运算符。
22.B。【解析】从实参传递过去的是结构体系数组的第3个元素,所以输出的name为Zhao。
23.B。【解析】本题考查实参与形参调用,从实参传递到形参时,只是数值的传递,调用函数中值的改变不会影响主函数中的值,因此原样输出。
24.D。【解析】本题考查链表结点的删除,q一>next中存放的是r所指结点的首地址,将r所指结点的首地址存于p-- next中,则实现删除q所指点的功能,并保持链表连续,P所指点与r所指结点相连。
25.A。【解析】本题考查逻辑与运算“&&”与逻辑或运算“||”。在选项A中,因为!a=0,所以关系表达式!a=1 为0,又因为逻辑与运算符“&&”两边的表达式只要一个等于零,则整个表达式为零,所以选项A正确。在选项8中,关系表达式a 26.C。【解析】由题目的已知条件函数fun的定义形式void fun(char ch,float x){…)可知第一个形参为字符型,所以A不符合,第二个形参为精度型,所以D不符合,函数fun 定义为void型(无论返回值型),故其没有返回值,所以选项B错误。选项C的第一个实参的类型为字符型,第二个实参的类型为单精度型,与函数fun的形式参数的类型相符合,所以选项C为正确答案。
27.C。【解析】语句char p[]={’a’,’b ’,’ c’);定义了一个一维字符数组p[],并用3个字符’a’,’b’ ,’c ’进行了初始化;而语句q[]="abe"表示定义了一个一维字符数组,并用一个字符串常量"abc"进行了初始化。在C语言中,系统在每个字符串常量的最后自动加入一个字符’\0 ’作为字符串的结束符。所以函数sizeof(q)=4,而sizeof(p)=3,因而选项C为正确答案。
28.D。【解析】本题主要考查while循环语句和switch case语句的使用方法。其执行步骤为:k=5时,跳出switch 语句,然后k自减1;当k=4时,跳出switch语句,然后k自减1;当k=3时,n=13+k=0+3=3,跳出switch语句,然后k自减1;当k=2时n=n+k=3+2=5,跳出switch语句,然后k自减l;当k=1时,case 1:n=n+k一5+1=6,没有break继续执行CaSe 3;n=n+k=6+1=7,跳出switch语句,然后k自减1;当k=0时,退出循环,所以输出结果为7。
29.C。【解析】由题目的语句P=&a[1]可知,P指向a 数组中下标为1的元素“4”,又因为P为指针变量,所以P [x]与*(p+x)等价,因而在for循环语句中,第一次循环P [1]指向a数组中下标为2的元素“6”,第二次循环p[2]指向a数组中下标为3的元素“8”,所以y=6+8=14,因而选项C为正确答案。
30.C。【解析】本题考查排序的使用由sort()函数的两层for循环语句可知,其二々能是把数组a口中的元素按照从大到小的顺序进行排列。在main()函数中首先定义了一维整型数组aa[10],然后调用sort(aa+2,5)实现从数组aa中下标为2的元素“3”开始.其后连续的5个元素从大到小进行排列,其余元素不变。
31.C。【解析】abc函数是求u、v的最大公约数,当v= 16时,循环成立,执行其后的语句,即w=u%v,u=v;v=w;w=24%16=8,u=16,v=8,接着返回到while中,当v=8 时,循环成立,执行其后昀语句,即w=u%v;u=v;v=w;w=16%8=0,u=8,v=0,接着再返回到while中,当v=0 时,循环不成立,退出循环。
32.A。【解析】根据函数的定义可知,如果x>Y成立,则函数f1返回x的值,函数f2返回y的值。所以fl(a,b)= 4,n(c,d)=5,f2(a,b)=3;,f2(c,d)=2,故e=f2(4,5)=4,f =f1(3,2)=3,g=4+3斗5+2-4-3=7。
33.C。【解析】本题考查的是指向函数的指针。函数指针定义的基本格式为:类型标识符(*指针变量名)()。“类型标识符”为函数返回值的类型。
34.C。【解析】本题先将指针P指向二维数组ch[2] IS],相当于p[0]="1234",p[1]="5678";通过双重for循环,将P中的字符隔一个输出一个,通过“s=p[i][j]-’0’;”语句将所要输出的字符#换成相应的十进制数。
35.B。【解析】根据判断本题共进行三次for循环,第一次执行for循环,p[1][0]=p[1][0]-1=3;第2次执行for循环,p[1][1]=p[1][1]-1=4;第3次执行for循环,[1][2] =1,最后输出的是a[o][1]+a[1][1]+a[1][2]=2+4+ 1=7。
36.C。【解析】strcpy(sl,s2)函数的功能是将字符串s2 复制到字符串s1中。要保证s1存储区能容纳下s2字符串。
37.D。【解析】本题j=要是考查带参数的宏的定义,过程如下:int a=a/S(k+m)/S(k+m)=a/(k+m*k+m/k+m)=9/(3十2*3十2/3十2*3十2)=0。
38.B。【解析】本题主要考查结构指针:P=&data,访问结构体的成员。它可以通过结构变量访问,即data,可以用等价的指针形式:(*p).a和P->a来访问结构体变量中的成员。
39.D。【解析】首先定义了一个指向一维数组b的指针P,一个指向指针P的指针变量q;输出*(p++)是先输出* p,即b[O]的值,再将指针P指向数组的下一个元素b[1];输出**q是输出指针P所指单元的内容。
40.B。【解析】第一个循环的作用是把从0~9的数赋
给a数组;第二个循环的作用是把a数组中的部分元素放到数组P中,即p[0]=a[0]=0,p[1]=a[2]=2,p[2]=a[6]= 6;第三个循环的作用是把P中的各个元素的两倍之和放到k中,即k=5+0+4+12=21。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |