c语言经典选择填空题1(14页).doc
《c语言经典选择填空题1(14页).doc》由会员分享,可在线阅读,更多相关《c语言经典选择填空题1(14页).doc(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-c语言经典选择填空题1-第 14 页选择题(30分)(第一部分分10分,第二部分12分,第三部分8分)第一部分:简单类题目( 50个题目,从中选择10,每题1分)1、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为(C) A4 B16 C32 D5222.以下程序的输出结果(B) 。 main( ) int x1=3, x2=0, x3=0; if (x1=x2+x3) printf(* * * *); else printf(# # # #);A输出:* * * * B输出:# # # #C存在语法错误 D无输出结果3.下面四个选项中,
2、均是合法转义字符的选项是(A)。A n B 017 C018 f xab D0 101 xlf4若有说明:int a=1,b=2,c=3,d=4;则表达式ab?a:cd?c:d的值是(D) 。A、4 B、3 C、2 D、15设i、j、和k是int型变量,且i=3,j=4,k=5,则以下值为0的表达式是 (D)。A i&j Bi=jCi|j+k&j-k D!(ij)&!k|1)6若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是(C) 。Anum%2= =1 B. !(num%2= =0) C!(num%2) Dnum%27有以下
3、程序main() int m=3,n=4,x; x=-m+; x=x+8/+n;printf(“%dn”,x);程序运行后的输出结果是 ( D ) 。A3 B5 C-1 D-28若有变量说明:int a=0,b=0,c=0;,以下符合C语言语法的赋值表达式是 ( C ) 。Aa=9+b+c=a+9 Ba=9+b;c=a+9;Ca=(9+b,b+) Da=9+b+=a+79若有以下定义,若int m=7,n=12,则能得到值为3的表达式是 ( D ) 。An%=(m%=5) Bn%=(m-m%5)Cn%=m-m%5 D(n%=m)-(m%=5)10以下能正确定义整型变量x、y和z并为其赋初值5的
4、语句是 ( C ) 。Aint x=y=z=5; Bint x,y,z=5;Cint x=5,y=5,z=5; Dx=5,y=5,z=5; 11若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|10的是 ( C ) 。Aabs(x-y)-10&x-y10C(x-y)10 D(x-y)*(x-y)10012. 设 int a=12,则执行完语句 a+=a-=a*a后,a的值是 ( D ) 。A 552 B 264 C 144 D -26413 以下叙述不正确的是 ( D )A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)
5、在C程序中,注释说明只能位于一条语句的后面14 下关于运算符优先顺序的描述中正确的是 ( C )。A)关系运算符 算术运算符 赋值运算符 逻辑与运算符B)逻辑 运算符 关系运算符 算术运算符 赋值运算符C)赋值运算符 逻辑与运算符 关系运算符 算术运算符D)算术运算符 关系运算符 赋值运算符=1) & (x=200) & (x=1) | (x=200) | (x=1) & (x=200) & (x=1) | (x=200) | (x=210)24设整型变量n=10,i=4,则赋值运算n%=i+1执行后,n的值是 () A. 0 B. 1 C. 2 D. 325在if(x)语句中的x与下面条件表
6、达式等价的是:()A) x!=0 B) x=1 C) x!=1 D) x=026、已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1=A+6-3;后,ch1中的值为() A、D B、E C、一个不确定的值 D、C 27. 已知x=3、y=2,则表达式 x*=y+8的值为 ( C )A)3 B)2 C)30 D)1028. 设x为int型变量,则执行以下语句后,x的值为 ( B )。x=10;x+=x- =x-x;A)10 B)20 C)40 D)3029 若有以下类型说明语句:char a; int b; float c; double d; 则表达式a*b+d-c的
7、结果类型为 ( D ) Afloat Bchar Cint Ddouble30 若二维数组a有m列,则在aij前的元素个数为( B )A)j*m+i B)i*m+j C)i*m+j-1 D)i*m+j+131 对for(表达式1;表达式3)可理解为( B ) A)for(表达式1;0;表达式3) B)for(表达式1;1;表达式3)C)for(表达式1;表达式1;表达式3)D)for(表达式1;表达式3;表达式3)32 以下描述不正确的是 ( C )。A使用while和do-while循环时,循环变量初始化的操作应在循环体语句之前完成Bwhile循环是先判断表达式,后执行循环语句Cdo-whi
8、le 和for循环均是先执行循环语句,后判断表达式Dfor、while 和do-while循环中的循环体均可以由空语句构成33.下列程序段的运行结果是 ( C )。int n=0; while(n+c&b=c B)a|b+c&b-c C)!(ab)&!c|1 D)!(a+b)+c-1&b+c/235. 有以下程序:#include void main ( )int a=1,b=2,m=0,n=0,k;k=(n=ba)|(m=ab);printf (%d,%dn,k,m);程序运行后的输出结果是 ( C )。A)0,0 B)0,1 C)1,0 D)1,136、以下能正确进行字符串赋值操作的是 (
9、 D ) A、char s5=ABCDE; B、char s5=A, B, C, D, E; C、char *s; *s=ABCDE; D、char *s=ABCDE; 37 下面程序的运行结果是 () #include #include main() char *s1=AbDeG; char *s2=AbdEg; s1+=2;s2+=2; printf(%d,strcmp(s1,s2); A) 正数 B) 负数 C) 零 D) 不确定的值3 若有定义:int a23,则对a数组的第i行j列元素地址的正确引用为 (A ) A) *(ai+j) B) (a+i) C) *(a+j) D) ai+
10、j 以下能对二维数组y进行初始化的语句是()A、static int y2 =1,0,1, 5,2,3;B、static int y 3=1,2,3, 4,5,6;C、static int y24=1,2,3, 4,5 , 6;D、static int y 3=1,0,1,0, , 1,1;40 以下printf语句的输出结果是() printf(%dn, strlen(school); A、7 B、6 C、存在语法错误 D、不定值41 不能把字符串:Hello!赋给数组b的语句是( B)。A. char b10=H,e,l,l,o,!; B. char b10; b=Hello!;C. ch
11、ar b10; strcpy(b,Hello!); D. char b10=Hello!;42 .设有定义:int a10,*p=a+6,*q=a;,则下列运算哪种是错误的 ( C ) A p-q B p+3 C p+q D pq43. 下列描述中不正确的是()A)字符型数组中可以存放字符串 B)可以对字符型数组进行整体输入、输出 C)可以对整型数组进行整体输入、输出 D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值44 以下对指针变量的操作中,不正确的是(D) A、int a, *p, *q; p=q=&a; B、int a=6, *p, *q=&a; p=q; C、int
12、a=b=6, *p; p=&a; b=*p; D、int a, *p, *q; q=&a; p=*q;45. 给出以下定义char x =abcdefg;char y =a,b,c,d,e,f,g;则正确的叙述为 ( C ) 。A)数组x和数组y等价B)数组x和数组y的长度相同C)数组x的长度大于数组y的长度D)数组x的长度小于数组y的长度46、设变量y为float类型,x为int类型,则以下能实现将y中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是 ( B )A、y=(y*100+0.5)/100.0 B、x=y*100+0.5,y=x/100.0C、y=y*100+0.5/100
13、.0 D、y=(y/100+0.5)*100.047 判断char型变量c1是否为大写字母的正确表达式是 ( C )A、A=c1=A)&(c1=A)&(c1=Z) D、(A=c1)48若a为已知整型变量,则对指针变量p的正确说明和初始化为 ( B ) 。Aint *p=a; Bint *p=&a; Cint *p=*a; Dint &p=&a;49 下列条件语句中,功能与其它语句不同的是 ( D ) 。Aif(a) printf(“%dn”,x);else printf(“%dn”,y);Bif(a= =0) printf(“%dn”,y);else printf(“%dn”,x);Cif(a
14、!=0) printf(“%dn”,x);else printf(“%dn”,y);Dif(a=0) printf(“%dn”,x);else printf(“%dn”,y);50. 若有语句:char *line5;,以下叙述中正确的是 ( A )。 A)定义line是一个指针数组,每个数组元素是一个基类型为char的指针变量 B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line是一个指针数组,语句中的*号称为间址运算符 D)定义line是一个指向字符型函数的指针 第二部分:中等难度题目(24个题目,从中选择8个,每题1.5分 共 12分)1 设有声明语句
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 经典 选择 填空 14
限制150内