就业数据资源平台
当前位置:首页 > C语言程序设计
2012年计算机等级考试二级c语言模拟试题及答案(10)

一、选择题(不才列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡响应位置上。)
10.1b 下列关于指针变量赋空值的说法错误的是
A)当赋空值的时辰,变量指向地址为0的存储单元
B)赋值语句可以表达为变量名=′\0′;
C)赋值语句可以表达为变量名=0;
D)一个指针变量可以被赋空值
考生谜底: 正确谜底: A


10.2b 下面函数的功能是
char *fun(char *str1,char*str2)
{ while((*str1)&&(*str2++=*str1++));
return str2;
}
A)求字符串的长度 B)斗劲两个字符串的巨细
C)将字符串str1复制到字符串str2中 D)将字符串str1接续到字符串str2中
考生谜底: 正确谜底: C


10.3b 下面轨范段中,输出*的个数是
char *s="\ta\018bc";
for(;*s!=′\0′;s++)printf("*");
A)9 
B)5 
C)6 
D)7
考生谜底: 正确谜底: C


10.4b 下列轨范是用来判定数组中特定元素的位置地址。如不美观输入如下整数:
876 675 896 101 301 401 980 431 451 777
#include 
#include 
int fun(int *s, int t, int *k)
{ int i;
*k=0;
for(i=0;iif(s[*k]return s[*k];
}
main()
{ int a[10]={ 876,675,896,101,301,401,980,431,451,777},k;
clrscr();
fun(a, 10, &k);
printf("%d, %d\n ", k, a[k]);
}
则输出结不美观为
A)7,431 
B)6 
C)980 
D)6,980 
正确谜底: D


10.5b 有以下轨范
#include  
main()
{ char *p,*q; 
p=(char *)malloc(sizeof(char)*20); q=p; 
scanf("%s %s",p,q); printf("%s %s\n",p,q); 
}
若从键盘输入:abc def<回车>,则输出结不美观是
A)def def 
B)abc def 
C)abc d 
D)d d
考生谜底: 正确谜底: A


10.6b 有以下轨范
#include 
main()
{ char *p="abcde\0fghjik\0 ";
printf("%d\n ",strlen(p));
}
轨范运行后的输出结不美观是
A)12 
B)15 
C)6 
D)5
考生谜底: 正确谜底: D


10.7b 已知char **t;则变量t是
A)指向char变量的指针 
B)指向指针的char变量
C)指向指针的指针 
D)以上说法都不合错误
考生谜底: 正确谜底: C


10.8b 阅读下面轨范,执行后的结不美观为
#include "stdio.h"
void fun(int *a,int *b)
{ int k;
k=5;
*a=k;
*b=*a+k;}
main()
{ int *a,*b,x=10,y=15;
a=&x;
b=&y;
fun(a,b);
printf("%d,%d\n",*a,*b);
}
A)10,15 
B)5,15 
C)5,10 
D)15,10
考生谜底: 正确谜底: C


10.9b 阅读下面轨范,在轨范执行后的结不美观为
#include "stdio.h"
int *fun(int *a,int *b)
{ int m;
m=*a;
m+=*b-3;
return(&m);
}
main()
{ int x=21,y=35,*a=&x,*b=&y;
int *k;
k=fun(a,b);
printf("%d\n",*k);
}
A)53
B)21 
C)35 
D)14
考生谜底: 正确谜底: A


10.10b 阅读下列轨范,则执行后的结不美观为
#include "stdio.h"
main()
{ int c[][4]={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};
printf("%x,%x\n",c[2][2],*(*(c+1)+1));
}
A)3e,6 B)62,5 C)56,5 D)3E,6
考生谜底: 正确谜底: A

就业数据资源平台