1、 C)A$ D)Dim5可在C程序中用作标识符的一组标识符是A)void B)as_b3 C)ForD)2cDefine _123 -abc DOWORD If case SiG6若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7; B)a=7+b+c,a+ C)int(12.3%4) D)a=a+7=c+b7以下非法的赋值语句是A) n=(i=2,+i); B)j+; C) +(i+1); D) x=j0;8设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是 A) 6.500000 B) 6 C) 5.500000 D) 6.000000
2、9已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 & y+z/2的值是 A) 6B) 4 C) 2 D) 110以下叙述中正确的是A)a是实型变量,C允许以下赋值a=10,因此可以这样说实型变量中允许存放整型值。B)在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式C)执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0D)已有a=3, b=5。当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为311不合法的八进制数是A)0 B)028 C)07700 D)0112不合法的十六进制数是A)ox
3、ff B)0Xabc C)0x11 D)0x1913若a、b、c、d都是int类型变量且初值为0,以下选项中不正确的赋值语句是A)a=b=c=100; B)d+; C)c+b;D)d=(c=22)-(b+);14以下合法的C语言赋值语句是A)a=b=58 B)k=int(a+b); C)a=58,b=58 D)-i;15以下程序的输出结果是 main() int x = 10, y = 3; printf(“%dn” , y = x / y); B)1 C)3 D)不确定的值16设有语句char a= 172;,则变量aA)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明不合法17C
4、语言中不合法的字符常量是A)xff B)65 C)& D)02818C语言中不合法的字符串量是A)”121” B)y= C)”nn” D)”ABCDx6d”19判断char型变量c是否为大写字母的最简单且正确的表达式是A)A=c=A&(c=Z) C) (A=c) D)(c=A)&=Z)20为表示关系 xyz,应使用的C语言表达式是A)(x=y)&(y=z) B)(x=y)AND(y=z)C)(x=y D)(x21设a、b和c都是int变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是A)a&b B)a=b C)a|b+c&b-c D)!(a c * 2 & b != 5 | !
5、(1 / 2)中,a、b、c的定义和赋值为 a = 3, b = 4, c = 2;则表达式的值为2以下程序的输出结果是main() int a=0;a+=(a=8);printf(%dn,a);3.设x,i,j,k都是int型变量,表达式x=(i=4,j=16,k=32)计算后,x的值为 。4.设x=2.5,a=7,y=4.7, 则x+a%3*(int)(x+y)%2/4为 。5.设a=2,b=3,x=3.5,y=2.5,则(float)(a+b)/2+(int)x%(int)y为 。6.已知:char a=a,b=b,c=c;int i;则表达式i=a+b+c的值为 。7.已知int a=
6、12,n=5;则:表达式运算后a的值各为 。a+=a a-=2 a*=2+3 a/=a+a n%=(n%=2) a+=a-=a*=a 8.若a为int型变量,则表达式 (a=4*5,a*2) , a+6的值为 。9.假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为 。10.定义:double x=3.5,y=3.2;则表达式(int)x*0.5的值是 ,表达式y+=x+的值是 。11.定义:int m=5, n=3;则表达式m/=n+4的值是 ,表达式m=(m=1,n=2,n-m)的值是 ,表达式m+=m-=(m=1)*(n=2)的值是 。12.表达式5%(-3)的值
7、是 ,表达式-5%(-3)的值是 。13.若a是int变量,则执行表达式a=25/3%3后,a的值是 。第四章 顺序结构程序设计1若有以下程序: int k=2, i=2, m;m=(k+=i*=k); printf(%d,%dn,m,i);执行后的输出结果是A) 8,6 B) 8,3 C) 6,4 D) 7.42若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句是A)a=a+b, b=a-b, a=a-b; B)t=a; a=b; b=t;C)a=t; t=b; b=a; D)t=b; a=t;3有以下程序 int i = 10, j = 1;,i-, +j);执行后输出结果是A)
8、 9,2 B) 10,2 C) 9,1 D) 10,14若有以下程序段,其输出结果是 a = 0, b = 0, c = 0; c = ( a -= a - 5), (a = b, b+3); printf(“%d,%d,%dn”,a, b, c);A)0,0,-10 B)0,0,5 C)-10,3,-10 D)3,3,-105若从终端输入以下数据,要给变量c赋以283.19,则正确的输入语句是A)scanf(“%f”,&c) B)scanf(“%8.4f”, &c); C)scanf(“%6.2f”, & D)scanf(“%8f”, &6若变量已正确说明,要求用以下语句给a赋予3.12、给
9、b赋予9.0,则正确的输入形式是 scanf(“a=%f,b=%f”,&a, &b);A)3.12 9.0 B)3.12,9.0 C)a=3.12,b=9.0 D)a=3.12,b=97以下程序的输出结果是 #include “math.h” double a = -3.0, b = 2;printf(“%3.0f %3.0fn”, pow(b,fabs(a), pow(fabs(a), b) );A)9 8 B)8 9 C)6 6 D)以上三个都不对8以下程序的输出结果是 char c1 = A, c2 = Y; printf(“%d,%dn”, c1, c2);A)因输出格式不合法,无正确
10、输出 B)65,90 C)A,Y D)65,899以下程序段的输出结果是 x = A; x = (x=A & x=Z)?(x+32):x;printf(“%cn”, x);A)A B)a C)Z D)z10 以下程序段的输出结果是 ch1, ch2; ch1 = A + 5 - 3; ch2 = A + 5 - 3; printf(“%d,%cn”, ch1,ch2);A)67, C B)B,C C)C,D D)不确定的值11以下程序的运行结果是 int a = 2, b = -1, c = 2; if(a b)if(b 0) c = 0; else c += 1; printf(“%dn”,
11、 c); C)2 D)3 12以下程序的输出结果是 w = 4, x = 3, y = 2, z = 1; printf(“%dn”, (w x) ? w: z 0) y = 1;else y = 0;-1 (x 0 C)y = D)y =2有如下程序 int x=1,a=0,b=0;switch(x)case 0: b+;case 1: a+;case 2:b+;a=%d,b=%dn,a,b);该程序的输出结果是A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 int a=5, b=4, c=3, d=2;if(abc)%dn,d); else if(c-1 =
12、 d) = 1),d+1);,d+2); A) 2 B) 3 C) 编译时出错 D) 44有以下程序#include stdio.h int i=1,j=1,k=2; if(j+|k+)&i+)%d,%d,%dn,i,j,k);执行后输出结果是 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,35有如下程序float x=2.0,y;if(x0.0)y=0.0;else if(x10.0)y=1.0/x;else y=1.0;%fn,y);A)0.000000 B)0.250000 C)0.500000 D)1.0000006若执行以下程序时从键盘上输入3和4,则输出结果是 a,
13、b, s; scanf(“%d%d”, &s = a; b) s = b; s *= s; printf(“%dn”, s);A)14 B)16C)18 D)207假定所有变量均已正确定义,下面语句段执行后的x的值是 a = b = c = 0; x = 35; if(!a) x-; else if(b) ; if(c) x = 3; else x = 4; A)34 B)4 C)35 D) 38.若w=1,x=2,y=3,z=4,则条件表达式wx ? w : yz ? y : z的值是A)4 B)3 C)2 D)19.以下程序输出结果是 。main ( ) int x=1,y=0,a=0,b
14、=0;switch(x) switch (y) case 0 : a+ ; break ;case 1 : b+ ;a+;case 3:printf(“a=%d,b=%d”,a,b);A)a=1,b=0 B)a=2,b=1 C)a=1,b=1 D)a=2,b=210.下述程序的输出结果是 。 int a,b,c;int x=5,y=10;a=(-y=x+) ? -y : +x ;b=y+ ; c=x ;printf(“%d,%d,%d”,a,b,c);A)6,9,7 B)6,9,6 C)4,4,6 D )7,9,711.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 。if
15、(aif (cd) x=1;elseif (bd) x=2;else x=3;else x=6;else x=7;A)1 B)2 C)3 D)412.若int i=10;执行下列程序后,变量i的正确结果是 。switch (i) case 9: i+=1 ;case 10:case 11:default :A)10 B)11 C)12 D)131若变量已正确定义,以下语句段的输出结果是 x = 0; y = 2; z = 3; 0: switch( y = 2) 1: printf(“*”); break; 2: printf(“%”); switch( z ) printf(“$”); de
16、fault : printf(“#”);2. 以下程序的输出结果是int x=100, a=10, b=20, ok1=5, ok2=0;if(ay)z)printf(%d,x);else printf(,z);5.执行以下程序段后,a= ,b= ,c= 。int x=10,y=9 ;int a,b,c ;a = (x-=y+) ? x- : y+ ;b = x+ ;c = y ;三判断题1.if语句中的表达式不限于逻辑表达式,可以是任意的数值类型。【 】2.switch语句可以用if语句完全代替。3.switch语句的case表达式必须是常量表达式。4.if语句,switch语句可以嵌套,而
17、且嵌套的层数没有限制。5.条件表达式可以取代if语句,或者用if语句取代条件表达式。6.switch语句的各个case和default的出现次序不影响执行结果。7.多个case可以执行相同的程序段。8.内层break语句可以终止嵌套的switch,使最外层的switch结束。9.switch语句的case分支可以使用 复合语句,多个语句序列。10.switch语句的表达式与case表达式的类型必须一致。四程序判断题1.下面程序将输入的大写字母改写成小写字母输出,其他字符不变;请判断下面程序的正误,如果错误请改正过来。char c;c = getchar ( ) ;c = (c=A | | c=Z) ? c-32 : c+32 ;printf(“%c”,c);2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5得到结果8;float x,y,r;char op ;scanf(“%f%c%f”,&x,&op,&y);switch (op) case + : r=x+y ;case - :case * :case / :printf(“%f”,r);第六章 循环控制1以下不是死循环的语句是A)for( ; ; x += i) ; B)while(1) x +;C)for(i = 10; i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1