C语言基本数据类型及运算题库.doc
《C语言基本数据类型及运算题库.doc》由会员分享,可在线阅读,更多相关《C语言基本数据类型及运算题库.doc(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章 基本数据类型及运算一、选择题1. 若以下选项中的变量已正确定义,则正确的赋值语句是 。A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3;答案:C2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是 。A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0 C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0答案:C3. 下列C语言中运算对象必须是整型的运算符是 。A) %= B) / C) = D)
2、*=答案:A4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是 。A) 0 B) 0.5 C) 1 D) 2答案:A5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是 。A) 把x和y按从大到小排列 B) 把x和y按从小到大排列 C) 无确定结果 D) 交换x和y中的值答案:D6. 下列变量定义中合法的是 。A)short_a=1-.le-1; B)double b=1+5e2.5;C)long do=0xfdaL; D)float 2_and=1-e-3;答案:A7. 以下4个选项中,不能被看作是一
3、条语句的是 。A) ; B) a=0,b=0,c=0;C) if (a0); D) if (b=0)m=1;n=2;答案:D8. 设x=1,y=-1,下列表达式中解为8的是 。A)x&y B)xx C)xx D)x=3答案:D9. 在C语言中不合法的整数是 。A)20 B)0x4001 C)08 D)0x12ed答案: C10. 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e0.2 C)-77.77 D)456e 2答案:B)11.若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7 B)a=7+b+c,a+C)int(12.3%4) D)a=a+7=c+b答案
4、:B)12.以下十六进制数中不合法的是A)oxff B)0Xabc C)0x11 D)0x19答案:A)13. 设int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=ik)&(c=i,j,k)后,c值是 。A)0 B)1 C)2 D)3答案:D14. 下列程序的运行结果是 。# include “stdio.h”void main( ) int i=23; do+i; while(i); printf(“%d”,i);A)23 B)24 C)死循环 D)无任何结果答案:C15.设int a=3,b=4,c=5;,下列表达式的值不为1的是 。A)a+bc&b=c B)a|
5、b+c&b-c C)!(ab)&!c|1 D)!(a+b)+c-1&b+c/2答案:A16.下列不合法的常量是: 。(1)? (2)abc (3)”Turbo c” (4)0x32 (5)123(6) (7)”(8) (9)” (10)a(11) (12)0123(13)xaf (14)王 (15)”李为民”(16)”xaif”答案:(2),(12),(14),(16)17. 下列运算符中,结合方向为自左向右的是( )。(A)?: (B), (C)+ = (D)+ +答案:(B)18. 若有float x;则sizeof (x)和sizeof (float)两种描述( )。(A)都正确 (B)
6、都不正确 (C)前者正确 (D)后者正确答案:(A)19. 有整型变量x,单精度变量y=5.5,表达式x=(float)(y*3+(int)y)%4)执行后,x的值为( )。(A)17 (B)17. (C)17.5 (D)16答案:(A)20. 若给定条件表达式(M)?(a+):(a-),则其中表达式(M) 。A和(M=0)等价 B和(M=1)等价C和(M!=0)等价 D和(M!=1)等价答案:C21. 已知float x=1,y;则y=+x*+x的结果是 。Ay=9 By=6 Cy=1 D表达式是错误的答案:D22. 以下程序的输出结果是 。short i=65535; printf (%d
7、n,i);A65535 B0C语法错误,无输出结果 D-1答案:D23.有变量说明语句int a,b ,c;,顺序执行下面语句: a=b=c=1; +a|+b&+c;那么,变量b的值应是( )A2 B1 C0 D3答案:B24. 有变量说明int a=3;,则表达式a1的运算结果和a的值应该是( )A0和2 B0和3 C1和2 D1和3答案:B25. 以下程序的输出为 。#includevoid main( ) double x=213.82631; printf(%-6.2en,x);A213.82 B21.38e+01 C2.14e+02 D-2.14e2答案:C26. 下列关于单目运算符
8、+ +、- -的叙述中正确的是 。A)它们的运算对象可以是任何变量和常量B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量D)它们的运算对象可以是char型变量、int型变量和float型变量答案:D27. 有以下程序:#include void main ( )char a,b,c,*d;a=;b=xbc;c=0xab;d=0127;printf (%c%c%c%cn,a,b,c,*d);编译时出现错误,以下叙述中正确的是 。A)程序中只有“a=;”语句不正确B)“b=xbc;”语句
9、不正确C)“d=0127;”语句不正确D)“a=;”和“c=0xab;”语句都不正确答案:D28. 有以下程序:#include void main ( ) int a=1,b=2,m=0,n=0,k;k=(n=ba)|(m=a0); D)if (b= =0)m=1;n=2;答案:D31. 假定有以下变量定义,则能使值为3的表达式是 。int k=7,x=12;A)x%=(k%=5) B)x%=(k-k%5)C)x%=k-k%5 D)(x%=k)-(k%=5)答案:D32. 以下程序的输出结果是 。#include void main( )int x=3,y=2,z=1;printf (%s=
10、%dn, x/y&z,x/y&z);printf (%s=%dn, xy&z, xy&z);A)x/y&z=0 B)x/y&z=1 xy&z =0 xy&z =0C)s=x/y&z=0 D)x/y&z=1 s=xy&z =1 xy&z =1答案:D33. 设有“int x=11;”则表达式(x+*1/3)的值是 。A)3 B)4 C)11 D)12答案:A34. 若有语句scanf(”%d %c%f”,&a,&b,&c),假设输入序列为2223a123o.12,a、b、c的值为 。A)无值 B)2223,a,123o.12C)2223,a,无 D)2223,a,123答案:D35. 下列描述中
11、,正确的一条是 。A)C语言的整型变量可以分为int 、short、long、unsigned int、unsigned short、unsigned long等几种类型,因此整型常量也可以分为这几种类型B)C语言的字符数据与整型数据可以互相赋值C)若对字符型变量的定义为:“char c;”可使用语句c=“a”对变量c赋值 D)已知x为float型,执行语句(int)x后,x为int型答案:B36. 设“int x=1,y=1;”,表达式(!xy-)的值是 。 A)0 B)1 C)2 D)-1答案:B37. 执行x=51+2&2|2*4c&b= =c&a|b+c&b+c的值为 。 A)5 B)
12、8 C)0 D)1答案:D40. 执行语句scanf (“%c%c%c”,&c1,&c2,&c3),输入abc时,变量c1、c2、c3的值分别为 。A)a, b, c B)a,b, C)a, , b D)a,c答案:A41. 若有以下定义:int a=10,b=9,c=8;顺序执行下列语句后,变量b中的值是 。c=(a -= (b-5);c=(a%11)+(b=3); A)3 B)8 C)9 D)10答案:A42. 有以下程序段:int m=0,n=0;char c=a;scanf(%d%c%d,&m,&c,&n);printf(%d,%c,%dn,m,c,n);若从键盘上输入:10A10,则
13、输出结果是 。A)10,A,10 B)10,a,10 C)10,a,0 D)10,A,0答案:A43. 已定义c为字符型变量,则下列语句中正确的是 。A)c=97 B)c=“97 “ C)c=97 D)c=“a”答案:C44. 若有以下变量说明和数据的输入方式,则正确的输入语句为( )。 变量说明:float x1,x2; 输入方式:4.52 3.5A)scanf (“%f,%f”,&x1,&x2); B)scnaf (“%f%f”,&x1,&x2);C)scanf (“%3.2f %2.1f”,&x1,&x2); D)scnaf (“%3.2f%2.1f”,&x1,&x2);答案:B45.
14、若有程序段:for (m=1;m=100;m+)scanf(%d,&y);if(y0) continue;printf(%3d,m);正确的描述是( )。A)当y=0时什么也不输出C)printf函数永远也不执行 D)最多允许输出100个非负整数答案:D46. 下面程序的运行结果是( )。#include #define DATA 20+7void main( ) printf(DATA=%d,DATA/3); A)DATA=22 B)DATA=21C)DATA=9 D)以上都不对答案:A47. sizeof(float)是( )。A)一个双精度型表达式 B)一个整型表达式 C)一种函数调用
15、D)一个不合法的表达式答案:B48. 设有语句 int a=5,b=6,c=7,d=8,x=2,y=2,n; n=(x=ad&bc);则执行完上述语句后n的值为( )。A)1 B)2 C)3 D)0答案:D49. 设c1,c2均是字符型变量,则以下不正确的函数调用为( )。A)scanf(“c1=%cc2=%c”,&c1,&c2); B)c1=getchar( ); C)putchar(c2); D)putchar(c1,c2);答案:D50. 有定义如下: char str150,str220,ch;则下列语句中正确的是( )。A)str1=“Crazy”; B)str1=“Crazy”;
16、str2=str1; str2=“English”; strcpy(str1,str2);C)ch=“xy”; D)ch=x;答案:D51. 有以下定义语句: double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。A)a=a+b=b+ B)w%(int)a+b)C)(c+w)%(int)a D)w=a=b答案:C52. 有以下程序:#include void main( ) int i=0,s=0;for(; ;) if(i=3|i=5)continue;if(i=6) break;i+; s+=i;printf(%dn,s);程序运行后的输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 数据类型 运算 题库
限制150内