1、第二部分 C语言基本语法知识精品资料第二部分 C语言基本语法知识一、选择题(1)以下叙述中错误的是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识 (2)以下叙述中错误的是A)C语句必须以分号结束B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句(3)以下不能正确计算代数式 值的C语言表达式是A)1/3*sin(1/2)*sin(1/2)B)sin(0.5)*sin(0.5)/3C)pow(sin(0.5),
2、2)/3D)1/3.0*pow(sin(1.0/2),2)(4)以下能正确定义且赋初值的语句是A)int n1=n2=10; B)char c=32;C)float f=f+1.1;D)double x=12.3E2.5;(5)设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是A)k=k=kB)-k+C)k%int(f)D)k=f=m(6)有以下程序段int k=0,a=1,b=2,c=3; k=ac ? c:k;执行该程序段后,k的值是A)3B)2C)1D)0(7)以下选项中可作为C语言合法常量的是 A)-80.B)-080C)-8e1.0D)-80.0e(
3、8).以下不能定义为用户标识符的是 A)MainB)_0C)_intD)sizeof(9)以下选项中,不能作为合法常量的是 A)1.234e04B)1.234e0.4C)1.234e+4D)1.234e0(10)有以下程序main() int m=12,n=34; printf(%d%d,m+,+n); printf(%d%dn,n+,+m);程序运行后的输出结果是 A)12353514B)12353513C)12343514D)12343513(11)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式ab?a:c0;(28) 设a和b均为double型变量,且a=5.5、b=
4、2.5,则表达式(int)a+b/b的值是A)6.500000B)6C) 5.500000D) 6.000000(29) 与数学式子 对应的C语言表达式是A) 3*xn(2*x-1) B) 3*x*n(2*x-1)C) 3*pow(x,n)*(1/(2*x-1)D) 3*pow(n,x)/(2*x-1)(30) 若有以下程序:main() int k=2,i=2,m;m=(k+=i*=k);printf(“%d,%dn”,m,i);执行后的输出结果是A) 8,6 B) 8,3C) 6,4 D) 7,4(31) 以下选项中,与k=n+完全等价的表达式是A) k=n,n=n+1B) n=n+1,k
5、=nC) k=+nD) k+=n+1(32) 若有定义:int a=8,b=5,C;,执行语句C=a/b+0.4;后,c的值为A) 1.4 B) 1 C) 2.0 D) 2(33) 以下选项中不属于C语言的类型的是A) signed short imt B) unsigned long intC) unsigned int D) long short(34) 以下叙述正确的是A) 可以把define和if定义为用户标识符B) 可以把define定义为用户标识符,但不能把if定义为用户标识符C) 可以把if定义为用户标识符,但不能把define定义为用户标识符D) define和if都不能定义为
6、用户标识符(35) 在C语言中,合法的长整型常数是A) OL B) 4962710C) 324562& D) 216D(36) 以下有4组用户标识符,其中合法的一组是A) For B) 4d C) f2_G3 D) WORD-sub DO IF voidCase Size abc define(37) 假定x和y为 double型,则表达式x=2,y=x+3/2的值是A) 3.500000 B) 3 C) 2.000000 D) 3.000000(38) 以下合法的赋值语句是A) x=y=100 B) d-; C) x+y; D) c=int(a+b);(39) 设正x、y均为整型变量,且x=
7、10 y=3,则以下语句的输出结果是pprintf(”%d,%dn”,x-,-y);A) 10,3B) 9.3 C) 9.2D)10.2(40) 以下程序的输出结果是main() int a=3;printf(“%dn”,(a+a-=a*a) );A) 6B)12 C) 0 D) -12(41) 以下所列的C语言常量中,错误的是A) 0xFF B) 1.2e0.5C) 2L D) 72(42) 下列选项中,合法的C语言关键字是A) VAR B) cher C) integer D) default(43) 以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子 的C语言表达
8、式是A) x/y*zB) x*(1/(y*z)C) x/y*1/zD) x/y/z(44) 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是A) -3 B) 9 C) -12D) 6(45) 若变量已正确定义并赋值,下面符合C语言语法的表达式是A) a:=b+1 B) a=b=c+2 C) int 18.5%3 D) a=a+7=c+b(46) C语言中运算对象必须是整型的运算符是A) %= B) / C) = D) =(47) 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是A) 1 B) 2 C) 2.0 D) 2.5(48) 若变量a、i
9、I已正确定义,且i已正确赋值,合法的语句是A) a=1 B) +i; C) a=a+=5; D) a=int(i);(49) 若有以下程序段,int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是A) 0 B) 0.5 C) 1 D) 2(50) 设有 int x=11; 则表达式 (x+ * 1/3) 的值是 A) 3 B) 4 C) 11 D) 12(51) 下列程序的输出结果是 A) 3 B) 3.2 C) 0 D) 3.07 main() double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(%d n, d*
10、y); (52) 下列变量定义中合法的是 A) short _a=1-.le-1; B) double b=1+5e2.5; C) long do=0xfdaL; D) float 2_and=1-e-3;(53) 以下选项中属于C语言的数据类型是 A) 复数型 B) 逻辑型 C) 双精度型 D) 集合型(54) 在C语言中,不正确的int类型的常数是 A) 32768 B) 0 C) 037 D) 0xAF(55) 设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为A) 4 B) 16 C) 32 D) 52(56) 设有如下的变量定义: int
11、i=8, k, a, b; unsigned long w=5; double x=1, 42, y=5.2;则以下符合C语言语法的表达式是A) a+=a-=(b=4)*(a=3) B) x%(-3);C) a=a*3=2 D) y=float(i)(57) 假定有以下变量定义: int k=7,x=12;则能使值为3的表达式是A) x%=(k%=5) B) x%=(k-k%5) C) x%=k-k%5 D) (x%=k)-(k%=5)(58) 设x和y均为int型变量,则以下语句:x+=y,y=x-y;x-=y;的功能是A) 把x和y按从大到小排列 B) 把x和y按从小到大排列C) 无确定结
12、果 D) 交换x和y中的值(59) 以下程序的输出结果是A) 10 10 B) 12 12 C) 11 10 D) 11 13 main() int a=12,b=12; printf(%d,%dn,- -a,+ +b); (60) 在C语言提供的合法的关键字是A) swicth B) cherC) Case D) default(61) 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是A)1 B)2C)2.0 D)2.5(62) C语言提供的合法的数据类型关键字是A) Double B) short C) integer D) Char(63) 在C语言中,合法的长整
13、型常数是A) 0L B) 4962710 C) 0.054838743 D) 2.1869e10(64) 若有说明和语句: int a=5; a+; 此处表达式a+的值是A) 7 B) 6 C) 5 D) 4(65) C语言中最简单的数据类型包括A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型(66) C语言中,运乍对象必须是整型数的运算符是A) % B) C) %和 D) * *(67) 设有如下定义: int x=10,y=3,z; 则语句printf(%dn,z=(x%y,x/y); 的输出结果是A) 1 B) 0 C) 4
14、 D) 3(68) 以下程序的输出结果是main() int x=10,y=10;printf(%d %dn,x-,-y); A) 10 10 B) 9 9 C) 9 10 D) 10 9 (69) 下列语句中符合C语言语法的赋值语句是A) a=7+b+c=a+7; B) a=7+b+=a+7;C) a=7+b,b+,a+7 D) a=7+b,c=a+7;(70) 在C语言中,要求运算数必须是整型的运算符是A) % B) / C) D) !(71) 请选出可用作C语言用户标识符的一组标识符A) void B) a3_b3 C) For D) 2adefine _123 -abc DOWORD
15、IF Case sizeof(72) 设 int a=12,则执行完语句 a+=a-=a*a后,a的值是A) 552B) 264C) 144D) -264(73) C语言程序的基本单位是A) 程序行 B) 语句 C) 函数 D) 字符(74) 请选出合法的C语言赋值语句A) a=b=58 B) i+; C) a=58,b=58 D) k=int(a+b);(75)在C语言中,如果下面的变量都是int类型,则输出的结果是 。sum=pad=5; pAd=sum + + ,pAd + + , + + pAd;printf(%dn,pad);A) 7 B) 6 C) 5 D) 4(76)以下程序的输
16、出结果是 。# include main() int i=010 , j = 10;printf(%d,%dn,+ +i , j - -); A) 11,10 B) 9,10 C) 010,9 D) 10,9二、填空题(1)语句:x+;+x; x=x+1;x=l+x; ,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同) 【1】 。(2) 若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量b中的值是 2 。c=(a-=(b-5);c=(a%11)+(b=3);(3) 设x和y均为int型变量,且x=1,y=2,则以下表达式的值为【3】 。1.0+
17、x/y(4) 数学式子 写成C语言表达式是 【4】 。(5) 设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句:a*=16+(b+)-(+c);后,a的值是 【5】 。答案:一、填空题1)A2)C3)A4)B5)C6)B7)A8)D9)B10)A11)A12)D13)D14)C15)A16)C17)D18)B19)A20)C21)D22)C23)B24)D25)C26)B27)C28)D29)C30)C31)A32)B33)D34)B35)A36)C37)D38)B39)D40)D41)B42)D43)A44)C45)B46)A47)C48)B49)A50)A51)C52)A53)C54)A55)C56)A57)D58)D59)D60)D61)C62)B63)A64)C65)B66)A67)D68)D69)D70)A71)B72)D73)C74)B75)C76)B77)78)79)80)二、填空题(1)x+=1(2)3(3)1.0(4)pow(sin(x),2) * (a+b)/(a-b) 或 sit(x) * sit(x) * (a+b)/(a-b)(5)28仅供学习与交流,如有侵权请联系网站删除 谢谢15