信息学奥赛辅导:C语言复习题(一)
第1~3章 练习题
一、选择题
1、一个C语言程序总是从____
A、主过程开始执行 B、主函数开始执行
C、子程序开始执行 D、主程序开始执行
2、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为_
A、4 B、16 C、32 D、52
3、下面四个选项中,均是C语言关键字的选项是____
A、auto enum include B、switch typedef continue
C、signed union scanf D、if struct type
4、下面四个选项中,均是合法整型常量的选项是____
A、160 -0xffff 011 B、-0xcdf 01a 0xe
C、-01 986,012 0668 D、-0x48a 2e5 0x
5、下面四个选项中,均是合法浮点数的选项是___
A、+1e+1 5e-9.4 03e2 B、-.60 12e-4 -8e5
C、123e 1.2e-.4 +2e-1 D、-e3 .8e-4 5.e-0
6、下面四个选项中,均是合法转义字符的选项是____
A、'\'' '\\' '\n' B、'\' '\017' '\"'
C、'\018' '\f' 'xab' D、'\\0' '\101' 'xlf'
7、下面正确的字符常量是____
A、'\X17' B、'\80' C、'\\' D、"\n"
8、下面四个选项中,均是正确的八进制数和十六进制数的选项是____
A、-10 0x8f -011 B、0abc -017 0xc
C、010 -0x11 0xf1 D、0a12 -0x123 -0xa
9、下面四个选项中,均是正确的数值常量或字符常量的选项是____
A、0.0 0f 8.9e '&' B、"a" 3.9E-2.5 1e1 '\"'
C、'3' 011 0xFF00 0a D、+001 0xabcd 2e2 50.
10、若有代数式 ,则正确的C语言表达式是____
A、2*ln(x)*cos(x)/3*x B、2*ln(x)*cos(x)/(3*x)
C、2*log(x)*cos(x)/3*x D、2*log(x)*cos(x)/(3*x)
11、若有说明语句:char ch1='\065';char ch2="2";char ch3='2';则:ch1中____,ch2中____,ch3中____
A、包含1个字符 B、包含2个字符
C、包含3个字符 D、字符个数不确定,说明不正确
12、若有运算符:>、*=、?:、%、sizeof,则将它们按运算的优先级排列的正确次序为(由低至高)____
A、*=→?:→%→>→sizeof B、?: →*=→>→%→sizeof
C、*=→>→?: →sizeof→% D、*=→?: →>→%→sizeof
13、若有以下类型说明语句:char a; int b; float c; double d;
则表达式a*b+d-c的结果类型为____
A、float B、char C、int D、double
14、若有变量说明:int a=0,b=0,c=0;,以下符合C语言语法的赋值表达式是____
A、a=9+b+c=a+9 B、a=9+b;c=a+9;
C、a=(9+b,b++) D、a=9+b++=a+7printf函数的作用是向终端
15、已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为____
A、D B、68 C、一个不确定的值 D、C
16、以下运算符中优先级最高的运算符是____
A、&& B、++ C、?: D、!=
17、若有定义:int k=7;float a=2.5,b=4.7;则表达式a+k%3*(int)(a+b)%2/4的值是___
A、2.500000 B、2.7500000 C、3.500000 D、0.000000
18、sizeof(float)是____
A、双精度型表达式 B、一个整型表达式
C、一个函数调用 D、一个不合法的表达式
19、设变量y为float类型,x为int类型,则以下能实现将y中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是____
A、y=(y*100+0.5)/100.0 B、x=y*100+0.5,y=x/100.0
C、y=y*100+0.5/100.0 D、y=(y/100+0.5)*100.0
20、设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是____
A、0~255 B、0~65535 C、-32768~+32767 D、-256~+255
21、若有以下定义,则能得到值为3的表达式是____(int m=7,n=12)
A、n%=(m%=5) B、n%=(m-m%5)
C、n%=m-m%5 D、(n%=m)-(m%=5)
22、若有说明:int a=1,b=2,c=3,d=4;则表达式a<b?a:c<d?c:d的值是___
A、4 B、3 C、2 D、1
23、若x为int类型,则逗号表达式(x=4*5,x*5),x+25的结果是___,x的值是___
A、20 B、100 C、表达式不正确 D、45
24、putchar函数可以向终端输出一个____
A、整型变量值 B、实型变量值 C、字符串 D、字符或字符型变量值
25、若有以下变量说明和数据的输入方式,则正确的输入语句为('└─┘'代表空格)____
变量说明:float x1,x2;
数据的输入方式:4.52<回车>
3.5<回车>
A、scanf("%f,%f",&x1,&x2); B、scanf("%f%f",&x1,&x2);
C、scanf("%3.2f└─┘%2.1f",&x1,&x2); D、scanf("%3.2f%2.1f",&x1,&x2);
26、若运行以下程序时,从键盘输入25,13,10<回车>,则输出结果为___
main( )
{
int a1,a2,a3;
scanf("%d%d%d",&a1,&a2,&a3);
printf("a1+a2+a3=%d\n",a1+a2+a3);
}
A、a1+a2+a3=48 B、a1+a2+a3=25
B、a1+a2+a3=10 D、不确定值
27、已知a、b、c为int类型变量,若有输入语句:scanf("a=%db=%dc=%d",&a,&b,&c);为使a值为1,b值为3,c值为2,从键盘输入数据的正确形式应当是____
A、132<回车> B、a=1b=3c=2<回车>
C、1<回车>3<回车>2<回车> D、a=1<回车>b=3<回车>c=2<回车>
28、以下能正确定义整型变量x、y和z并为其赋初值5的语句是____
A、int x=y=z=5; B、int x,y,z=5;
C、int x=5,y=5,z=5; D、x=5,y=5,z=5;
29、执行下面程序段后,x的值是____
int x;
printf("%d\n",(x=3*5,x+5));
A、10 B、15 C、20 D、5
30、下面程序段的输出结果是____
int a=023;
printf("%d\n",--a);
A、23 B、17 C、18 D、24
31、已知ch是字符型变量,则不正确的赋值语句是____
A、ch=5+9; B、ch='\0'; C、ch='7'+'9'; D、ch='a+b';
32、设x,y是float型变量,则不正确的赋值语句是____
A、++x; B、y=int(5); C、x*=y+1; D、x=y=0;
33、设有说明:double b=0.5,c=1.5; int a=10;
则正确使用了C语言库函数的赋值语句是____
A、c=asin(c)+fabs(a); B、b=log10(b)+pow(b);
C、c=sqrt(b-c); D、a=(int)(atan2((double)a,b)+exp(b-0.2));
34、以下程序段的输出结果是____
int i=1,j=4,k=2;
float x=5.5,y=9.0,z;
z=(i+j)/k+sqrt((double)y)*1.2/k+x;
printf("%f\n",z);
A、9.800000 B、9.300000 C、8.500000 D、8.000000
35、若a为int类型变量,则执行以下程序段后a的值为____
a=5;
a*=a/=a++;
A、2 B、1 C、40 D、3
36、若a和b均为int型变量,则执行以下程序断后x的输出是____
x=15;y=15;
printf("%d\n",x%=(y%=2));
A、0 B、1 C、6 C、12
37、若x为unsigned int类型变量,则执行以下程序段后x的值是____
x=65535;
printf("%d\n",x);
A、65535 B、1 C、无定值 D、-1
38、以下语句的执行结果是____
printf("%d\n",NULL);
A、1 B、0 C、-1 无定值
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论