选择练习题
1、C语言中最简单的数据类型包括( B )。
A、整型,实型,逻辑型 B、整型,实型,字符型
C、整型,字符型,逻辑型 D、整型,实型,逻辑型,字符型
2、C语言中,运算对象必须是整型数的运算符是(A )。
A、% B、/ C、%和/ D、*
3、为表示关系x<y<z,应使用C语言表达式( A )。
A、(x<y)&&(y<z) B、(x<y)AND(y<z)
C、(x<y<z) D、(x<y) &(y<z)
4、C语言程序的基本单位是( C )。
A、程序行 B、语句 C、函数 D、字符
5、C语言的程序一行写不下时,可以( D )。
A、用逗号换行 B、用分号换行
C、用回车符换行 D、在任意一空格处换行
标识符由字母,数字和下划线组成且第一个字符必须为字母或下划线
6、下述标识符中,( C )是合法的用户标识符。 A、A&B B、void C、_student D、ab*
7、在C语言中,字符型数据在内存中以( B )形式存放。
A、补码 B、ASCII码 C、反码 D、原码
8、一个程序由若干文件组成,共用同一变量,则此变量的存储类别应该为( B )。
auto自动变量
register寄存器变量
extern 外部变量
static静态变量
A、auto B、extern C、static D、Register 9、以下关于switch语句和break语句的描述中,只有(B )是正确的。
A、在switch语句中必须使用break语句
B、在switch语句中,可以根据需要使用或不使用break语句
C、break语句只能用于switch语句中
D、break语句是switch语句的一部分
10、C语言规定:调用一个函数时,实参变量和形参变量之间的数据传递是(B )。
A、地址传递 B、值传递
C、由实参传给形参,并由形参传回给实参 D、由用户指定传递方式
11、下述C语言转义符中( D )是非法的。
A、'\b' B、'\037' C、'\0xf ' D、'\''
12、为了要计算s=10!(10的阶乘),则以下对s的定义正确的是( D )。
printf函数的作用是向终端 A、int s B、unsigned s C、short s D、long s
13、判断变量ch中的字符是否为大写字母,最简单的正确表达式是( A )。
A、ch>='A'&&ch<='z' B、A<=ch<=Z
C、'A'<=ch<='z' D、ch>=A&&ch<=z
14、在C语言中,能表示无符号长整型常数的是(D )。
A、OL B、4962710U C、912374u D、2UL
15、能正确表示C语言的字符常量的是( C )。
A、'\0x41' B、''A'' C、'\0' D、''\0''
16、C语言中逻辑表达式的值为( A )。
A、0或1 B、非零值或零值 C、true或false D、'true'或'false'
17、C语言提供的基本数据类型关键字是( C )。
A、integer B、FLOAT C、unsigned D、Double
18、若定义语句:int b[ ]={1,2,3,4,5},*P=b;则表达式*p++的值是( A )。
A、1 B、2 C、b[0]的地址 D、b[1]的地址
19、在下列选项中,不正确的表达式是( C )。
A、a>b B、c--, ++b, a+=1 C、a=c+b>n-m=k D、p++
20、若有以下定义:
int a[ ]={1,2,3,4,5,6,7};
char cl='b',c2='2';
则数值不为2的表达式是( D )。
A、a[1] B、'd'-cl C、a['3'-c2] D、c2-0
25、下述对C语言字符数组的描述中错误的是( C )。
A、字符数组可以存放字符串
B、字符数组中的字符串可以整体输入、输出
C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D、不可以用关系运算符对字符组中的字符串进行比较
27、以下程序的输出结果是( A )。
main( )
{ int i=010, j=10, k=ox10;
printf(''%d,%d,%d\n'',i,j,k);
}
A、8,10,16 B、8,10,10 C、10,10,10 D、10,10,16
28、以下程序的输出结果是( B )。
#include<stdio.h>
main( )
{printf(''%d\n'',NULL);}
A、不确定的值(因变量无定义) B、0 C、-1 D、1
29、以下程序的输出结果是( B )。
main( )
{ char c1='6',c2='0';
printf(''%d,%d,%d\n'',c1,c2,c1-c2);
}
A、因输出格式不合法,输出出错信息 B、54,48,6
C、6.0,7 D、6,0,6
32、下述对C语言字符数组的描述中错误的是( C )。
A、字符数组可以存放字符串
B、字符数组中的字符串可以整体输入、输出
C、可以在赋值语句中通过赋值运算符''=''对字符数组整体赋值
D、不可以用关系运算符对字符组中的字符串进行比较
33、Turbo C中,对于以下程序( A )。
main( )
{ int x,y;
y=creat(&x);
printf(''%d \n'', y);
}
creat(int a)
{return a++;}
A、编译时会给出错信息
B、顺利进行编译、连接、执行;不报任何错误
C、顺利通过编译、连接、但不能执行
D、顺利通过编译,但连接出错
34、设有如下定义:
int x=10, y=4,z;
则语句:
printf(''%d\n'', z=(x%y, x/y));
的输出结果是( C )。
A、1 B、0 C、2 D、3
35、下述程序段的输出结果是( D )。
main( )
{ int x=10, y=10;
printf(''%d, %d\n'', x++, ++y);
}
A、10,10 B、11,11 C、11,10 D、10,11
36、定义如下变量和数组:
int j;
int x[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是( C )。
for(i=0;i<3;i++﹚
printf(''%d'', x[i][2-i]);
A、159 B、147 C、357 D、369
37、若要求在if后一对圆括号中表示a不等于0的关系,则不能正确表示这一关系的表达式为( C )。
A、a<>0 B、!a C、a=0 D、a
38、若m,y,z均为int型变量,则执行下面语句后m值是(A )。
m=1;x=2;y=3;z=4;
m=(m<x)?m:x;
m=(m<y)?m:y;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论