一、选择题(每题2分,共30分)
下列各题的四个选项中,只有一个选项是正确的,请将正确选项填在下表中。 1
1. 请选出可用作C语言用户标识符的一组标识符 。
A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 2. 若有定义:int m=5; float x=3.9, y=4.7;
则表达式x+m%4*(int)(x+y)%5/2的值是 。 A.4.9 B.5.4 C.5.9 D.5
3. 在下面的条件语句中(其中s1和s2表示是C语言的语句),只有一个在功能上与其它
三个语句不等价,它是 。
A.if (a) s1 ; else s2; B.if (a= =0) s2; else s1; C.if (a!=0) s1; else s2; D.if (a= =0) s1; else s2; 4.
设a为整型变量,则表达式10<a<15的值是 。
A.0 B.1 C.语法错误 D.根据a的值确定 5.
程序段如下:则以下说法中正确的是: 。 int k=-20; while(k=0) k=k+1;
A. while循环执行20次 B. 循环是无限循环 C. 循环体语句一次也不执行 D. 循环体语句执行一次 6.
若有以下数组说明,则i=10;a[ a[i] ]元素数值是 。 int a[12]={1,4,7,10,2,5,8,11,3,6,9,12}; A.10 B.9 C.6 D.5
7. 以下不能对二维数组a进行正确初始化的语句是 。
A. int a[2][3]={0}; B. int a[][3]={{1,2},{0}}; C. int a[2][3]={{1,2},{3,4},{5,6}}; D. int a[][3]={1,2,3,4,5,6} 8. 以下不能正确赋值的是 。
A. char s1[10];s1=\ C. char s3[20]= \ 9. 若有以下定义和语句,且0≤i<10则对数组元素的错误引用是 。
int a[10]={1,2,3,4,5,6,7,8,9,10},*p,i; p=a;
A. *(a+i) B. a[p-a] C. p+i D. *(&a[i])
C语言程序设计,模拟题2013,第1页 共10页
2 3 4 5 6 7 8 9 10 11 12 13 14 15 10. 设有说明int (*ptr)[M]; 其中ptr是 。
A. M个指向整型变量的指针 B. 指向M个整型变量的函数指针
C. 一个指向具有M个整型元素的一维数组的指针
D. 具有M个指针元素的一维指针数组,每个元素都只能指向整型量 11. 当调用函数时,实参是一个数组名,则向函数传送的是 。
A. 数组的长度
B. 数组的首地址
C. 数组每一个元素的地址 D. 数组每个元素中的值
12. 下列函数的功能是 。
int fun1(char * x) { char *y=x; while(*y++); return(y-x-1);}
A. 求字符串的长度 B. 比较两个字符串的大小 C. 将字符串X 复制到字符串Y D. 将字符串X 连接到字符串Y 后面 13. 已知学生记录描述为
struct student { int no; char name[20]; char sex;
struct{int year; int month; int day; }birth; } s;
设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是 。
A. year=1984;month=11;day=11;
B. birth.year=1984;birth.month=11;birth.day=11; C. s.year=1984;s.month=11;s.day=11;
D. s.birth.year=1984;s.birth.month=11;s.birth.day=11;
14. 在VC6.0中,将一个int型整数10002存到磁盘上,以文本文件形式存储和以二进制文
件存储,占用的字节数分别是 。 A. 4和4 B. 4和5
C. 5和4
D. 5和5
15. 执行如下程序段的结果是 。
char ch[3][5]={ \printf(\ AAAA
C语言程序设计,模拟题2013,第2页 共10页
B. BBB C. A
D. B
二、读程序题(1-4题每题2分,5-8题每题3分,共20分)
请把程序的运行结果写在题后的横线上。
1. 当从键盘输入字母A时,运行结果为 。
#include
case ‘A’ : printf(“%c”,’A’); case ‘B’ : printf(“%c”,’B’); break; default: printf(“%s\\n”,”other”); } }
2. 以下程序的运行结果是: 。
#include
if(k%2) { k=k+3;
printf(“k=%d,”,k); continue; } k=k+1;
printf(“k=%d,”,k); } }
3. 以下程序的运行结果是: 。
#include
int a[6]={12,4,17,25,27,16},b[6]={27,13,4,25,23,16},i,j; for(i=0;i<6;i++)
C语言程序设计,模拟题2013,第3页 共10页
{ for(j=0;j<6;j++) if(a[i]==b[j])break; if(j<6) printf(\ }
printf(\}
4. 以下程序的运行结果是: 。
#include
{ int a=5,b=8,*p=&a,*q=&b; *p=*q;
printf(“%d,%d,%d,%d\\n”,a,b,*p,*q); (*q)++; p=q;
printf(“%d,%d,%d,%d\\n”,a,b,*p,*q); }
5. 以下程序的运行结果是: 。
#include\void fun(int k) { if(k>0) fun(k-1); printf(“ %d,”,k); }
void main() { int w=3; fun(w); printf(“\\n”); }
6. 以下程序的运行结果是: 。
#include\void main( ) { int j,k;
int x[3][3],y[3][3]={0}; for(j=0;j<3;j++) for(k=0;k<3;k++) x[j][k]=j+k; for(j=0;j<3;j++) for(k=j;k<3;k++)
C语言程序设计,模拟题2013,第4页 共10页
y[k][j]=x[j][k]; for(j=0;j<3;j++) for(k=0;k<3;k++)
printf(\ }
7. 以下程序的运行结果是: 。
#include\char cchar(char ch)
{ if (ch>=‘A’&&ch<=‘Z') ch=ch-‘A'+‘a'; return ch; }
void main()
{ char s[]=\ while(*p) { *p=cchar(*p); p++; }
printf(\ }
8. 以下程序的运行结果是: 。
#include\void add(); void main() { int i;
for(i=0;i<2;i++) add(); }
void add() { int x=0; static int y=0; x++; y=y+3;
printf(\}
C语言程序设计,模拟题2013,第5页 共10页
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库c语言 模拟题2013 含答案在线全文阅读。
相关推荐: