D、在循环体内使用break和continue语句的作用相同
8、以下能对一维数组a进行正确初始化的语句是(B)。 A、int a[10]={}; B、int a[]={0}; C、int a[10]={10*1}; D、int a[10]=(0,0,0,0,0)
9、以下正确的说法是(A).
A、函数的类型决定返回值的类型
B、定义函数时,形参的类型说明可以放在函数体内 C、return后面不能为表达式
D、如果形参与实参的类型不一致,以实参类型为准
10、以下程序的输出结果为(C)。
main()
{int a=1,b=2,c=3,d=4,e=5;
printf(\ }
int func(int x,int y) { return(x+y); }
A、9 B、15 C、13
D、函数调用出错
11、以下正确的说法是(D)。
A、用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调
B、用户若需调用标准库函数,调用前必须重新定义 C、系统根本不允许用户重新定义标准库函数
D、用户可以重新定义标准库函数,若如此,该函数将失去原有含义
12、在#include命令中,文件名可用双引号或尖括号括起来,对于二者的下列说法中正确的是
(A).
A、用尖括号时,直接按系统标准方式检索文件目录. B、用双引号时,直接按系统标准方式检索文件目录. C、用双括号和尖括号时,都不检查源文件所在的文件目录. D、以上说法都不对.
13、当说明一个结构体变量时系统分配给它的内存是(D)。 A、成员中占内存量最大者所需的容量 B、结构中第一个成员所需内存量
C、结构中最后一个成员所需内存量 D、各成员所需内存量的总和
14、以下程序段给数组所有的元素输入数据,请选择正确答案填入(C)。
#include
{ int a[10],i=0;
while(i<10) scanf(\ . . . }
A、&a[i+1] B、a+i C、a+(i++) D、&a[++i]
15、在定义构造数据类型时,不能(A)。 A、末尾不写分号 B、说明存储类型 C、初始化 D、说明变量
一、单项选择题
1、下列变量说明语句中,正确的是(D)。
A、char a;b;c; B、char:a b c; C、int x;z; D、int x,z;
2、设以下变量均为int类型,则值不等于7的表达式是(A)。
A、(x=6,x+1,y=6,x+y) B、(x=y=6,x+y,y+1) C、(y=6,y+1,x=y,x+1) D、(x=y=6,x+y,x+1)
3、设:
long w=65535,t=7654321;
根据下面的输出结果,正确的程序段是(C). w=65535,t=7654321 end
A、printf(\B、printf(\C、printf(\
D、printf(\
4、设x,y,z,t均为整型变量,则执行以下语句后,t的值为:( B) x=y=z=1;
t=++x||++y&&++z;
A、0 B、1 C、2 D、不定值
5、如果int a=2,b=3,c=0,下列描述正确的是( B )。
A、a&&b>c的结果为假 B、!a!=(b!=c)表达式的值为1 C、a||(b=c)执行后b的值为0
D、a>b!=c和a>(b!=c)的执行顺序是一样的
6、从键盘输入的整数中找出最小值min,输入0时结束.请在A处填写正确语句( D )。 #include \main()
{ int min=0,a; do{
scanf(\ if(min>a) min=a; }while(___A___); printf(\}
A、a=0 B、a==0 C、a>0&&a<0 D、a!=0
7、设有如下程序段: int k=10; while(k==0)
k--;
则下述说明中正确的是( A).
A、循环体一次也不执行 B、循环体执行一次 C、死循环
D、循环体执行10次
8、static char str[10]=\数组元素个数为(D)。
A、6 B、9
C、5 D、10
9、函数调用:strcat(strcpy(str1,str2),str3)的功能是( D)。
A、将串str1复制到串str2中后再连接到串str3之后 B、将串str2连接到串str1之后再将串str1复制到串str3中 C、将串str1连接到串str2之后再复制到串str3之后
D、将串str2复制到串str1中后再将串str3连接到串str1之后
10、C语言程序中必须有的函数是(B)。
A、#include \B、main C、printf D、scanf
11、程序运行结束后,屏幕上输出值为( B). static int x=10; main( ) { int x=3; f( ); x- -;
printf(\ } f( )
{ x++; }
A、10 B、2 C、11 D、3
12、file1.c中有命令,#include
A、a在file1.c中应用extern说明. B、a在file1.c中有效,不必用extern说明. C、a在file1.c中不生效
D、a在file1.c和file2.c中均不生效.
13、若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是(C)。
A、*p=*q; B、n=*q; C、p=n; D、p=q;
14、以下程序的输出结果是( A).
main()
{char str[ ]=\
A、68
B、不确定的值 C、字符D的地址 D、0
15、使用共用体变量,不可以(A)。
A、同时访问所有成员 B、进行动态管理 C、节省存储空间 D、简化程序设计
单选
1、若变量均已正确定义并赋值,以下合法的C语言赋值语句是(C)。
A、x+n=I; B、x==5; C、x=n/2.5; D、5=x=4+1;
2、下述错误的C语言常量是:(C). A、0xf B、5. C、090 D、.25
3、根据下面的程序,使a=123,c1='o',c2='k'哪一种是正确的键盘输入方法?(B)。
(规定用字符串[CR]表示回车,U表示空格) main() {int a;
char c1,c2;
scanf(\}
A、123UoUk[CR] B、123ok[CR] C、123Uok[CR] D、123oUk[CR]
4、已知键入a=4,b=3,执行下面程序输出的结果是(B).
main()
{ int a,b,s;
scanf(\