[计算机类试卷]国家二级C语言机试(编译预处理和指针)模拟试卷7及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(编译预处理和指针)模拟试卷7及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(编译预处理和指针)模拟试卷7及答案与解析.doc(20页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(编译预处理和指针)模拟试卷 7及答案与解析 一、选择题 1 有以下程序: #include stdio h void main() void fun(char*c) char s81; while(*c) gets(s); fun(s); puts(s); if(*c =a&*c =z)*c=*c (a A); c+: 当执行程序时从键盘上输入 Hello Beijing回车,则程序的输出结果是 ( A) HELLO BEIJING ( B) Hello Beijing ( C) hello Beijing ( D) hELLO Beijing 2 有以下程序 #incl
2、ude stdio h void f(int*p, int*q) void f(int*p, int*q); main() p=p+1; *q=*q+1; int m=1, n=2, *r=&m; f(r, &n); printf(“ d, d“, m, n); 程序运行后的输出结果是 ( A) 2, 3 ( B) 1, 3 ( C) 1, 4 ( D) 1, 2 3 有以下程序 #include stdio h main() void fun(int*a, int*b) int x=3, y=5, *p=&x, *q=&y; int*c; fun(p, q); printf(“ d, d,
3、“, *p, *q); c=a; a=b; b=c; fun(&x, &y); printf(“ d, d n“, *p, *q); 程序运行后的输出结果是 ( A) 3, 5, 5, 3 ( B) 3, 5, 3, 5 ( C) 5, 3, 3, 5 ( D) 5, 3, 5, 3 4 有下列程序: void f(int b) int I; for(i=2; i 6; i+)bi*=2; main() int a10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, i; f(a); for(i=0; i 10, i+)printf(“ d, “, ai); 程序运行后的输出结果
4、是 ( A) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ( B) 1, 2, 3, 4, 10, 12, 14, 16, 9, 10, ( C) 1, 2, 6, 8, 10, 12, 7, 8, 9, 10, ( D) 1, 2, 6, 8, 10, 12, 14, 16, 9, 10, 5 有以下程序 #include stdio h int fun(char s) main() int n=0; char s10=6, 1, *, 4, *, 9, *, 0, *; while(*s =9&*s =0) printf(“ d n“, fun(s); n=10*n+*s
5、 0; s+; return(n); 程序的运行结果是 ( A) 61490 ( B) 61 ( C) 9 ( D) 5 6 若有以下程序 #include stdio h void sp(int*a) int b=2; main()int k=3, *p= k; a=&b; sp(p); *a=*a*2; printf(“ d, d n“, k, *p); printf(“ d, “, *a); 则程序的输出结果是 ( A) 4, 3, 4 ( B) 4, 3, 3 ( C) 6, 3, 6 ( D) 6, 6, 6 7 若有以下程序 #include stdio h int k=7: vo
6、id f(int*s)int*t=&k; *s=t: printf(“ d, d, d, “, k, *t, *s); main()int i=3, *p=&i, *r=&p; f(r); printf(“ d, d, d n“, i, *p, *r); 则程序的输出结果是 ( A) 3, 7, 7, 7, 7, 7 ( B) 7, 7, 7, 3, 3, 3 ( C) 3, 3, 3, 7, 7, 7 ( D) 7, 7, 7, 3, 7, 7 8 若有以下程序 #include stdio h int*f(int*s, int*t)int*k; if(*s *t) k=s; s=t; t=
7、k; return s; main() int i=3, j=5, *p=&i, *q=&j, *r; r=f(p, q); printf(“ d, d, d, d, d n“, i, j, *P, *q, *r); 则程序的输出结果是 ( A) 3, 5, 5, 3, 5 ( B) 5, 3, 5, 3, 5 ( C) 5, 3, 3, 5, 5 ( D) 3, 5, 3, 5, 5 9 若有以下程序 #include stdio h main()int k=3; void sp(int*a)int b=2; sp(&k); *a=*a*2; printf(“ d n“, k); print
8、f(“ d, “, *a); a= b; *a=*a*2; pfintf(“ d, “, *a); 则程序的输出结果是 ( A) 6, 4, 6 ( B) 6, 4, 3 ( C) 6, 12, 12 ( D) 9, 4, 9 10 若有以下程序 #include stdio h int k=7, m=5; void f(int*s)int*t=&k; s=&t; *s=&m; printf(“ d, d, d, “, k, *t, *s); main()int i=3, *p=&i, *r=&p; f(r); printf(“ d, d, d n“, i, *P, *r); 则程序的输出结果
9、是 ( A) 7, 5, 7, 3, 3, 3, ( B) 7, 5, 7, 3, 5, 7, ( C) 7, 5, 5, 3, 3, 3, ( D) 7, 7, 5, 3, 3, 3, 11 若有以下程序 #include stdio h int*f(int*s, int*t)int k; if(*s *t) k=*s; *s=*t; *t=k; return s; main()int i=3, j=5, *p=&i, *q= j, *r; r=f(p, q); printf(“ d, d, d, d, d n“, i, j, *p, *q, *r); 则程序的输出结果是 ( A) 3, 5
10、, 5, 3, 5 ( B) 3, 5, 3, 5, 5 ( C) 5, 3, 5, 3, 5 ( D) 5, 3, 3, 5, 5 12 有以下程序 #include stdio h int funa(int a, int b)return a+b; int funb(int a, int b)return a-b; int sss(int(*t)(), int x, int y)return(*t)(x, y); main()int x; x=sss(funa, 9, 3); x+=sss(funb, 8, 3); printf(“ d n“, x); 程序运行后的输出结果是 ( A) 1
11、7 ( B) 23 ( C) 24 ( D) 22 13 有以下程序 void fun(int x, int y, int*c, int*d) *c=x+y; *d=x y; main()int a=4, b=3, c=0, d=0; fun(a, b, &c, &d); printf(“ d d n“, c, d); 程序的输出结果是 ( A) 4 3 ( B) 3 4 ( C) 7 1 ( D) 0 0 14 有以下程序 void fun(int*p, int*q)int t; t=*p; *p=*q; *q=t; *q=*p; main()int a=0, b=9; fun(&a, &b
12、); printf(“ d d n“, a, b); 程序的输出结果是 ( A) 0 0 ( B) 9 9 ( C) 9 0 ( D) 0 9 15 有以下程序 char fun(char*c)if(*c =Z&*c =A) *c=A a; return*c; main()char s81, *p=s; gets(s); while(*p) *p=fun(p); putchar(*p); p+; printf(“ n“); 若运行时从键盘上输入 OPEN THE DOOR,程序的输出结果是 ( A) oPEN tHE dOOR ( B) open the door ( C) OPEN THE
13、DOOR ( D) Open The Door 16 有以下程序 void swap(char*x, char*y) main() char t; char*s1=“abc“, *s2=“123“; t=*x; *x=*y; *y=t; swap(s1, s2); printf(“ s, s n“,s1, s2); 程序执行后的输出结果是 ( A) abc, 123 ( B) 123, abc ( C) 321, cba ( D) 1bc, a23 17 有以下函数 int fun(char*x, char*y)int n=0; while(*x=*y)&*x!= 0) x+; y+; n+;
14、 return n; 函数的功能是 ( A)查找 x和 y所指字符串中是否有 0 ( B)统计 x和 y所指字符串中最前面连续相同的字符个数 ( C) 将 y所指字符串赋给 x所指存储空间 ( D)统计 x和 y所指字符串中相同的字符个数 18 有以下函数 int fun(char*s)char*t=s; while(*t+); return(t-s); )该函数的功能是 ( A)比较两个字符串的大小 ( B)计算 s所指字符串的长度 ( C)计算 s所指字符串占用内存字节的个数 ( D)将 s所指字符串复制到字符串 t中 19 有以下程序 (说明:字母 A的 ASCII码值是 65) voi
15、d fun(char*s)while(*s) if(*s 2) printf(“ c“, *s); s+; main()char a=“BYTE“; fun(a); printf(“ n“); 程序运行后的输出结果是 ( A) BT ( B) YE ( C) YT ( D) BY 20 有以下程序 #include stdio h void fun(char*p) +p; printf(“ s n“, *p); main() char*a=(“Morning“,“Afternoon“,“Evening“,“Night“); fun(a); 程序的运行结果是 ( A) fternoon ( B)
16、 Morning ( C) orning ( D) Afternoon 21 有以下程序 void fun1(char宰 P) main() char*q; char a=“Program“), *p; q=p; p=&a3; fun1(p); printf(“ s n“, a); while(*q!= 0) (*q)+; q+; 程序执行后的输出结果是 ( A) Prphsbn ( B) Prohsbn ( C) Progsbn ( D) Program 22 有以下程序 #include stdio h main() void fun(char*a, char*b) char*s=“*a*
17、b*“, t80; while(*a=*)a+; fun(s, t); puts(t); while(*b=*a)b+; a+; 程序的运行结果是 ( A) a*b ( B) *a*b ( C) a*b* ( D) ab 23 下列函数的功能是 void fun(char*a, char*b)while(*b=*a)!= 0)a+; b+; ( A)使指针 b指向 a所指字符串 ( B)将 a所指字符串和 b所指字符串进行比较 ( C)将 a所指字符串赋给 b所指空间 ( D)检查 a和 b所指字符串中是否有 0 24 有以下程序 #include stdio h #include strin
18、g h void fun(char s10, int n) char t; int i, j; for(i=0; i n 1; i+) for(j=i+l j n; j+) if(si0 sj0)t=si0; si0=sj0; sj0=t; main() char ss510=“bcc“, “bbcc“, “xy“, “aaaacc“, “aabcc“; fun(ss, 5); printf(“ s, s n“, ss0, ss4); 程序的运行结果是 ( A) aaaacc, xy ( B) bcc, aabcc ( C) xy, aaaacc ( D) aabcc, bcc 25 有以下程
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 编译 预处理 指针 模拟 答案 解析 DOC
