C语言习题三基本语句_第1页
C语言习题三基本语句_第2页
C语言习题三基本语句_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、习题三 基本语句1. 以下叙述中错误的是 。A C 语句必须以分号结束B、复合语句在语法上被看作一条语句C空语句出现在任何位置都不会影响程序运行D赋值表达式末尾加分号就构成赋值语句解析:本题考查的是C语句。"空语句出现在任何位置都不会影响程序运行 ”这句话是错误的,例如在for 循环中, 循环条件语句为空时, 则不判断循环条件, 循环将无终止地进行下去, 导致了此循环为死循环。 故 本题答案为 C。2. 有以下程序,其中1表示按无符号整数输出main() unsigned int x=0xFFFF; /* x的初值为十六进制数 */printf("%un ",x)

2、;程序运行后的输出结果是 。A、 -1 B 、 65535 C 、 32767 D 、 0xFFFF解析:本题考查的是整型无符号数的输出。i的作用是按无符号的十进制形式输出整型数,十六进制数OxFFFF转换为二进制位其值为16个1,代表的整数就是65535。故本题答案选B。3. 下列定义变量的语句中错误的是 。A、 int _int; B 、 double int_; C 、 char For; D 、 float US$;解析:本题考查的是C数据类型及其定义。选项 D中含有"$",故不符合标识符的定义。故本题答案为D。4. #include stdio.hmain() c

3、har c1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getchar(); c6=getchar(); putchar(c1); putchar(c2); printf("%c%cn",c5,c6); 程序运行后,若从键盘输入(从第1列开始)123回车 45678回车 则输出结果是 。A、 1267 B 、 1256 C 、 1278 D 、 1245解析:本题考查的是字符输入输出函数的应用。 getchar() 函数只能接收一个字符,即使输入多个字 符后再按

4、回车还是只能将第一个字符读入。scanf()和printf() 是按格式输入输出的函数,当输入 123回车,scanf()分别读入字符"1"、"2"、"3"、"回车 ";接下来输入45678回车 ,则getchar()读入字符"4" 赋值给c5,字符"5"赋值给C6,故本题答案为 D5. 以下叙述中正确的是 。A、调用printf函数时,必须要有输出项B使用putchar函数时,必须在之前包含头文件stdio.hC在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D调

5、用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码解析:本题考查的是标准输出函数。在使用标准输入输出库函数(除了 printf 和 scanf )前,必须要用 预编译命令 "#include" 将头文件 "stdio.h" 包括到用户源文件中。故本题答案为 B。6. 有以下程序main() int m,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p); printf("%d%d%dn",m,n,p);若想从键盘上输入数据,入是 o使变量m中的值为12

6、3,n中的值为456,p中的值为789,则正确的输A、 m=123n=456p=789C、 m=123,n=456,p=789B、 m=123 n=456 p=789D、 123 456 789解析:本题考查的是格式输入函数。如果在 "格式控制 "字符串中除了格式说明以外还有其他字符,则 在输入数据时应输入与这些字符相同的字符。 根据本题的数据输入形式说明在输入数据时, 必须输入 "m=" 、 "n=" 、"p=" 字符,且中间不能含有空格。故本题答案为A。7. 有以下程序main() char a,b,c,d;s

7、canf("%c,%c,%d,%d",&a,&b,&c,&d); printf("%c,%c,%c,%cn",a,b,c,d);若运行时从键盘上输入:6,5,65,66 /。则输岀结果是°A、 6,5,A,B B 、 6,5,65,66 C 、 6,5,6,5 D、 6,5,6,6解析:本题考查的是格式字符的输入和输出。将字符常量6和 5所对应的内存的 ASCII 码翻译成字符常量为6和5输出,将内存中的整型数65和66对应的字符常量即A和B输出。所以此题答案为A。8. 以下程序的输出结果是 。main()int

8、 k=17;printf("%d,%o,%xn",k,k,k);A、17,021,0x11 B 、 17,17,17 C 、17,0x11,021 D 、 17,21,11 解析:本题的考查点是不同格式的数据输出。 printf 函数对不同类型的数据用不同的格式字符, "%d"是以十进制形式输出整数 (正数不输出符号);"0"以八进制无符号形式输出整数 (不包括前导符0); "%x" 以十六进制无符号形式输出整数(不包括前导符Ox)。本题答案为Do9. 有定义语句: int x,y; 若要通过 scanf(&quo

9、t;%d,%d",&x,&y); 语句使变量 x 得到数值 11,变量 y 得到数值 12,下面四组输入形式中,错误的是 oA 11 12 / B、11,12 / C、11, 12 / D、11, /12/解析:本题的考查点是格式输入函数。如果在“格式控制”字符串中除了格式说明以外还有其它字符,贝U 在输入数据时应输入与这些字符相同的字符。所以输入的两个数字之间的逗号是不可少的。故本题答案为Ao10. 设变量 x 为 fl0at 型且已赋值,则以下语句中能将 x 中的数值保留到小数点后两位,并将第三位四舍五入的是 oA、 x=x*100+0.5/100.0; B 、

10、x=(x*100+0.5)/100.0C、 x=(int)(x*100+0.5)/100.0; D 、 x=(x/100+0.5)/100.0;解析:本题的考查点是实型数据。对于此类题目,我们可用排除法,题目要求保留到小数点后两位,选项A B、D都不合题面要求。选项 C中, x=(int)(x*100+0.5)/100.0 中,x为float型,所以小数点后有6 位小数,x*100后有4位,x*100+0.5仍为4位,且在这里已经将第三位四舍五入了,取整后再除以100.0,结果中小数点后为2位。故本题答案为Co11. 有以下程序main() int a=666,b=888;printf(&qu

11、ot;%dn",a,b);程序运行后的输出结果是 。A、错误信息 B、666 C、888 D、666,888解析:本题考查的是输出格式。 printf() 函数中,当格式转换说明符个数少于输出项个数时,多余的 输出项不予输出。所以本题答案为 B。12. 有以下程序main() int x=102,y=012;printf("%2d,%2dn",x,y);执行后输出结果是 。A、 10,01 B 、 02,12 C 、 102,10 D 、 02,10解析:y=012表示将八进制数12赋给变量y。d格式符,用来输出十进制整数。 %md m为指定的输出字 段的宽度。如果数据的位数小于 m则左端补以空格,若大于 m,则按实际位数输出。本题是将八进制数 12 也输出为十进制数,八进制数 12转换为十进制数为 10,所以输出结果为 102,10。故本题答案为 C。13. 若以下选项中的变量已正确定义,则正确的赋值语句是 。A、 x1=26.8%

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论