资源预览内容
第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
亲,该文档总共8页全部预览完了,如果喜欢就下载吧!
资源描述
C 程序设计试题汇编 1.3 以下叙述正确的是_ A)一个 C 源程序可由一个或多个函数组成 B)一个 C 源程序必须包含一个 main 函数 C)C 程序的基本组成单位是函数 D)在 C 程序中,注释说明只能位于一条语句的后面 答案:D 2.2 若 x、y、j 和 k 都是 int 型变量,则计算下面表达式后,x 的值为_ A) 7 B)16 C)32 D)52 答案:C 2.6 下面四个选项中,均是不合法的用户标识符的选项是_ A)A B)float C)b-a D)_123 P_0 la0 goto temp Do _A int INT 答案:C 2.23 以下不正确的叙述是_ A) 在 C 程序中,逗号运算符的优先级最低 B) 在 C 程序中,APH 和 aph 是两个不同的变量 C) 若 a 和 b 类型相同,在计算了赋值表达式 a=b 后 b 中的值将放入 a 中,而 b 中的值不变 D) 当键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数 值 答案:D 2.30 若有说明语句:char c=72;则变量 c_ A) 包含 1 个字符 B) 包含 2 个字符 C) 包含 3 个字符 D) 说明不合法,c 的值不确定 答案:A 2.37 在 C 语言中,char 型数据在内存中的存储形式是_ A)补码 B)反码 C)原码 D)ASCII 码 答案:D 3.2 以下程序的输出结果是_.(注:表示空格) main() printf(“n*s1=%15s*”,”chinabeijing”); printf(“n*s2=%-5s*”,”chi”); A)*s1=chinabeijing * B)*s1=chinabeijing * *s2= * * chi * *s2=chi * C)*s1=* chinabeijing * D)*s1= chinabeijing * *s2= chi * *s2=chi 答案:D 3.11 已有如下定义和输入语句,若要求 a1,a2,c1,c2 的值分别为 10,20,A 和 B,当从第一列 开始输入数据时,正确的数据输入方式是_(注:表示回车) int a1,a2; char c1,c2; scanf(“%d%d”, scanf(“%c%c”, A)1020AB B)1020 AB C)10 20 AB D)1020AB 答案:D 3.15 根据题目中已给出的数据的输入形式和输出形式,程序中输入输出语句的正确内容是 _ main() int x; float y; prinf(“enter x,y:”) 输入语句 输出语句 输入形式 enter x,y:23.4 输出形式 x+y=5.40 A) scanf(“%d,%f”, prinf(“nx+y=%4.2f”,x+y); B)scanf(“%d%f”, prinf(“nx+y=%4.2f”,x+y); C)scanf(“%d%f”, prinf(“nx+y=%6.1f”,x+y); D) scanf(“%d%3.1f”, prinf(“nx+y=%4.2f”,x+y); 答案:B 3.46 有一输入函数 scanf(“%d”,k);则不能使 float 类型变量 k 得到正确数值的原因是1和2 答案:1未指明 k 的地址 2 格式控制符与变量类型不匹配 scanf 语句的正确形式应该是:scanf(“%f”, 4.4 能正确表示”当 x 的取值在1,10和200,210范围内为真,否则为假”的表达式是_ A)(x=1) B) if (x0) x=x+y; prinf (“%f”,x); else prinf (“%f”,-x); C) if (x0) x=x+y; prinf (“%f”,x); else prinf (“%f”,-x); D) if (x0) x=x+y; prinf (“%f”,x) else prinf (“%f”,-x); 答案:B 4.35 当 a=3,b=2,c=1 时,表达式 f=abc 的值是 . 答案:0 4.59 有 int a=3,b=4,c=5,x,y;,则以下表达式的值为 ! (x=a) scanf(“%d,%d”, if (1) z=x; 2 pringf(“%d,%d”,x,y); 答案:1x0) s=s+1; if (ab) t=s+t; else t=2*s; prinf(“s=%d,t=%d”,s,t); 为了使输出结果 t=4,输入量 a 和 b 应满足的条件是 . 答案:0 main() int x=1, y=0,a=0,b=0; switch(x) case 1: switch(y) case 0:a+;break; case 1:b+;break; case 2: a+; b+; break; prinf(“a=%d,b=%d”,a,b); 上面程序的运行结果是_ 答案:a=2,b=1 5.14C 语言中 while 和 do-while 循环的主要区别是_ A) do-while 的循环体至少无条件执行一次 B) while 的循环控制条件比 do-while 的循环控制条件严格 C) do-while 允许从外部转到循环体内 D) do-while 的循环体不能是复合语句 答案:A 5.28 若 I 为整型变量,则以下循环执行次数是_ for (I=2;I= =0;) prinf(“%d”,I- -); A)无限次 B)0 次 C)1 次 D)2 次 答案:B 5.36 下面程序的功能是计算 1 至 50 中是 7 的倍数的数值之和,请选择填空. #include main() int I,sum=0; for (I=1;I main() int r,m,n; scanf(“%d%d”, if (m main() int I=1, j=0; do if ( 1 ) prinf(“%4d”,I); j=j+1; if ( 2 ) prinf (“n”); I=I+1; while (I1000); 答案:1I%3= =2 float b; fchar c; scanf(“%c%d%c%f; c,b,a,b); 答案:1.字符变量标识符多写一个 f;2.格式输入函数名有错;3.scanf 函数中格式字 符与数据类型不匹配;4.少了一个双引号.正确的应为: char c; scanf(“%c%f%d%fn”, 3.11 把下列程序改写得更合理. (1) while (A) if (B) continue; C; (2) do if (!A) continue; else B; C; while (A) 答案(1)可改写为: while (A) if (!B) C; (2)可改写为: do if (A) B; C; while (A) 3.12 指出下面三个程序的功能.当输入为:”quert?”时,它们的执行结果是什么? (1) #include”stdio.h” main() char c; c=getchar(); while (c!=?) putchar(c); c=geetchar(); (2) #include”stdio.h” main() char c; while (c=getchar()!=?) putchar(+c); (3) #include”stdio.h” main() while (putchar (getchar()!=?); 答案:(1)的功能是:显示从键盘输入的每一个字符,当输入”?”时结束. 执行结果是: quert (2)的功能是:显示从键盘输入的每一个字符的下一个字符(按字母顺序排 列),当输入”?”时结束. 执行结果是: rvfsu (3)的功能与(1)相同,但输出结果中多一个”?” 3.18 换零钱,把一元钱全兑换成硬币,有多少种兑换方法? 答案:略 3.38 打印出以下图案. * * * * * * * * * * * * * * * * * * * * * * * * * 答案:略
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号