c语言试题库(含答案)(编辑修改稿)内容摘要:

数据的取值范围为: A、 128~ 127 B、 32768~ 32767 C、 0~ 65536 D、 )0~ 2147483647 标准答案: B 【 8】下面程序的输出结果为()。 include void main() { int a[3],i,j,k=2。 for(i=0。 i3。 i++) a[i]=0。 for(i=0。 ik。 i++) for(j=0。 jk。 j++) a[j]=i*j。 print f(%d\n,a[2])。 } A、 0 B、 1 C、 2 D、 3 标准答案: A 【 11】下面程序的输出结果是。 includestdio. h main() {int i=2, p; p=f(i, i+1); print f(% d, p); } int f(a, b) int a, b; {int c; c=a; if(ab)c=1; else if(a==b)c=0; else c=1; return(c); } A、 1 B、 0 C、 1 D、 2 标准答案: A 【 12】 C 语言中,逻辑真表示为 A、 TRUE B、 39。 y39。 或 39。 Y39。 C、 1 D、非零值 标准答案: C 【 15】以下说法正确的是()。 A、在 C 语言中,要调用的函数必须在 main()函数中定义 B、 C 语言程序总是从第一个定义的函数开始执行 C、 C 语言程序中, main()函数必须放在 程序的开始部分 D、 C 语言程序总是从 main()函数开始执行 标准答案: D 【 2】下面程序中存在语法错误,关于错误的原因正确说法是()。 include void p_ch1()。 void main() { int a=5,b。 ............. b=p_ch1(A)。 } A、语句 void p_ch1()。 有错,它是函数调用语句,不能使用 void 说明 B、变量名不能使用大写字母 C、函数说明和函数调用语句之间有矛盾 D、函数名中不能使用下划线 标准答案: C 【 9】执行下列程序时,输入 123空格 456空格 789回车 ,输出结果是。 include void main() { char s[100]。 int c,i。 scanf(%c,amp。 c)。 scanf(%d,amp。 i)。 scanf(%s,s)。 print f(%c,%d,%s\n,c,i,s)。 } A、 123,456,789 B、 1,456,789 C、 1,23,456,789 D、 1,23,456 标准答案: D 【 10】下面程序的输出结果是 void prtv(int *x) {print f(% d\n, ++*x); } main() {int a=25; prtv(amp。 a); } A、 23 B、 24 C、 25 D、 26 标准答案: D 【 12】实型变量 a, b 中放有两门课程的考试成绩,如果两门成绩都及格 (成绩 =60),则显示“ pass”,如果 a 成绩不及格,则显示 fail,如果 a 成绩及格而 b 成绩不及格则不做任何处理。 下列程序段中可实现上述要求的是 A、 if(a=60) if(b=60) print f(pass); else print f(fail); B、 if(a60) print f(” fail” ); else if(b=60) print f(pass); C、 if(a=60)amp。 amp。 (b=60)) print f(pass); else if(b60) print f(fail); D、 D)if(b=60) if(a=60) print f(pass); else print f(fail); 标准答案: B 【 13】以下程序的输出结果是 includestdio. h main() {int i。 for(i=1。 i=5。 ++i) {if(i%2)print f(“ *” )。 else continue。 print f(“ ” )。 }print f(“ $” )。 } A、 ***$ B、 ***$ C、 **$ D、 **$ 标准答案: A 【 14】以下说法中正确的是 A、 continue 语句的作用是结束整个循环的执行 B、 break 语句应出现在 switch 语句和循环语句中 C、利用 goto 语句可以使程序的执行从一个函数跳到另一个函数 D、循环语句中 break 语句不能单独出现 标准答案: B 【 1】运行下列程序的输出是。 main() {int k=1; {int k=2; print f(% d, k); } print f(% d, k); } A、 12 B、 21 C、 11 D、 22 标准答案: B 【 5】若有代数式,则不正确的 C 语言表达式是。 A、 a/b/c*e*3 B、 3*a*e/b/c C、 3*a*e/b*c D、 a*e/c/b*3 标准答案: C 【 6】以下程序的输出结果是。 main() {int a=10, b=10; print f(% d,% d, a, ++b); } A、 10, 11 B、 10, 10 C、 9, 9 D、 9, 11 标准答案: A 【 7】不属于整型常量的是 A、 10 B、 010 C、 0xl0 D、 标准答案: D 【 8】以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。 defineN10 void arrin(int x[N]) { int i=0。 while(iN) scanf(%d, __)。 } 在下划线处应填入的是。 A、 x+i B、 amp。 x[i+1] C、 x+(i++) D、 amp。 x[++i] 标准答案: C 【 10】设有以下程序片段: char s[]=Program!; char *p; p=s; 则执行完上面的程序段后, *(p+8)的值为。 A、 39。 !39。 B、 39。 \039。 C、 39。 m39。 D、不定值 标准答案: B 【 5】下面四个选项中,均是合法转义字符的选项是。 A、‘ \’’ ‘ \\’‘ \n’ B、 \’ ‘ \017’ ‘ \”’ C、‘ \018’ ‘ \f’ ‘ xab’ D、‘ \\0’ ‘ \101’ ‘ x1f’ 标准答案: A 【 7】设整型变量 a 的值为 5,使整型变量 b 的值不为 2 的表达式是。 A、 b=a/2 B、 b=6(a) C、 b=a% 2 D、 b=a3?2: 1 标准答案: C 【 10】以下程序段的功能是给数组所有的元素输入数据,则应在程序横线填上的选项是。 includestdio. h main() {int a[10], i=0; while(i10)scanf(% d,____); } A、 a+(i++) B、 amp。 a[i+1] C、 a+i D、 amp。 a[++i] 标准答案: A 【 2】以下叙述中正确的是。 A、全局变量的的作用域一定比局部变量的作用域范围大 B、静态( static)类 别变量的生存期贯穿于整个程序的运行期间 C、函数的形参都属于全局变量 D、未在定义语句中赋初值的 auto 变量和 static 变量的初值都是随机值 标准答案: B 【 4】再定义一个结构体变量时,系统分配给它的内存是 A、结构体中第一个成员所需内存量 B、结构体中最后一个成员所需内存量 C、成员中占内存量最大者所需内存量 D、各成员所需内存量的总和 标准答案: D 【 11】若 i 是 int 型变量,且有下面的程序片段 i=0; if(i=0)print f() else print f(****); 上 面程序片段的输出结果是 A、 B、 **** C、 **** D、有语法错误,无输出结果 标准答案: D 【 9】有以下程序 include include void main() { char a[7]=a0\0a0\0。 int i,j。 i=sizeof(a)。 j=strlen(a)。 print f(%d%d\n,i,j)。 } ______。 A、 22 B、 76 C、 72 D、 62 标准答案: C 【 15】下面属于 C 语言标识符的是 () A、 2ab B、 @f C、 ?b D、 _a12 标准答案: D 【 8】有以下程序 include include void main() { char a[7]=a0\0a0\0。 int i,j。 i=sizeof(a)。 j=strlen(a)。 print f(%d%d\n,i,j)。 } ______。 A、 22 B、 76 C、 72 D、 62 标准答案: C 【 9】下面正 确的数组定义语句是。 A、 int y[1][4]={1,2,3,4,5}。 B、 float x[3][]={{1},{2},{3}}。 C、 long s[2][3]={{1},{1,2},{1,2,3}}。 D、 double t[][3]={0}。 标准答案: D 【 10】下面程序的输出结果是 void prtv(int *x) {print f(% d\n, ++*x); } main() {int a=25; prtv(amp。 a); } A、 23 B、 24 C、 25 D、 26 标准答案: D 【 11】下面满足当 (a=b)amp。 amp。 (c==d)时 u=w,否则 x=y 的 if 语句是 A、 if(ab) if(c==d)x=y; else x=y; else u=w; B、 if(ab)x=y; else if(c==d)u=w; else x=y; C、 if(ab) {if(c==d)x=y; else u=w; } D、 D)if(a=b) {if(c==d)x=y; else u=w; } 标准答案: B 【 14】执行下面程序片段的结果是 int x=0。 do {printf(“ %2d” ,x)。 } while(x)。 A、打印出 321 B、打印出 23 C、打印不确定结果 D、陷入死循环 标准答案: C 【 1】如果用 scanf()来输入长整型数据,则正确的格式控制符是。 A、% x B、% lx C、% lD D、% d 标准答案: B 【 4】下面程序的运行结果是。 main() {struct cmplx {int x; int y; }um[2]={l, 3, 2, 7}; print f(% d\n, um[0].y/um[0].x*um[1].x); } A、 0 B、 1 C、 3 D、 6 标准答案: D 【 9】有以 下程序 include include void main() { char p[]={39。 a39。 ,39。 b39。 ,39。 c39。 },q[10]={39。 a39。 ,39。 b39。 ,39。 c39。 }。 print f(%d%d\n,strlen(p),strlen(q))。 } ______。 A、在给 p 和 q 数组置初值时,系统会自动添加字符串结束符,故长度都为 3 B、由于 p 数组中没有字符串结束符,长度不能确定;但 q 数组中字符串长度为 3 C、由于 q 数组中没有字符串结束符 ,长度不能确定;但 p 数组中字符串长度为 3 D、由于 p 和 q 数组中都没有字符串结束符,故长度都不能确定 标准答案: B 【 10】若有以下定义: ihta[]={1, 2, 3, 4, 5, 6, 7, 8, 9}, *p=a; 则值为 5 的表达式是。 A、 p+=4, *(p++) B、 p+=4, *++p C、 p+=5, *p++ D、 p+=4, ++*p 标准答案: A 【 14】请读程序 includestdio. h main() {int num=0。 while(num++=2) {print f(“ %d\n” ,num)。 }} 上面程序的输出结果是 A、 1。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。