A.1,2,0
B.2,1,0
C.1,2,1
D.2,1,1
正确答案:
20.以下程序输出是()。
main(){chara[2][5]={“6937”,”8254”};inti,j,s=0;for(i=0;i<2;i++)for(j=0;a[i][j]>'0'&&a[i][j]<='9';j+=2)s=10*s+a[i][j]-‘0’;printf(“s=%d”,s);}
A.6385
B.69825
C.63825
D.693825
正确答案:
21.以下正确数组定义语句是()。
A.inty[1][4]={1,2,3,4,5};
B.floatx[3][]={{1},{2},{3}};
C.longs[2][3]={{1},{1,2},{1,2,3}};
D.doublet[][3]={0};
正确答案:
22.已知“inta=4,b=5,c;”,则实施表示式“c=a=a>b”后变量a值为()。
A.0
B.1
C.4
D.5
正确答案:
23.说明语句"int(*p)();"含义是()。
A.p是一个指向一维数组指针变量
B.p是一个指针变量,指向一个整型数据
C.p是一个指向函数指针,该函数返回值是一个整型
D.以上都不对
正确答案:
24.main(argc,argv)中形式参数argv正确说明形式应该为()。
A.char*argv[]
B.charargv[][]
C.charargv[]
D.char*argv
正确答案:
25.在以下对C语言描述中,正确是()。
A.在C语言中调用函数时,只能将实参数值传输给形参,形参值不能传输给实参
B.C语言函数既能够嵌套定义又能够递归调用
C.函数必需有返回值,不然不能使用函数
D.C语言程序中有定义关系全部函数都必需放在同一源文件中
正确答案:
26.C编译系统提供了对C程序编辑、编译、连接和运行环境,以下能够不在该环境下进行步骤是()。
A.编辑和编译
B.编译和连接
C.连接和运行
D.编辑和运行
正确答案:
27.以下程序输出结果是()。
main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf(“%d,”x[i][2-i]);}
A.1,5,9
B.1,4,7
C.3,5,7
D.3,6,9
正确答案:
28.C语言结构类型变量在程序实施期间()。
A.全部组员一直驻留在内存中
B.只有一个组员驻留在内存中
C.部分组员驻留在内存中
D.没有组员驻留在内存中
正确答案:
29.要判定char型变量m是否是数字字符,能够使用下列表示式()。
A.0<=m&&m<=9
B.'0'<=m&&m<='9'
C.“0”<=m&&m<=“9”
D.前3个答案都是错误
正确答案:
30.实施以下程序段后,c3值是()。
intc1=1,c2=2,c3;c3=c1/c2;
A.0
B.1/2
C.0.5
D.1
正确答案:
31.下面程序输出结果是()。
main(){inti,j;floats;for(i=6;i>4;i--){s=0.0;for(j=i;j>3;j--)s=s+i*j;}printf(“%f”,s);}
A.135.000000
B.90.000000
C.45.000000
D.60.000000
正确答案:
32.以下对C语言中联合类型数据正确叙述是()。
A.一旦定义了一个联合变量后,即可引用该变量或该变量中任意组员
B.一个联合变量中能够同时存放其全部组员
C.一个联合变量中不能同时存放其全部组员
D.联合类型数据能够出现在结构类体型定义中,但结构体类型数据不能出现在联合类型定义中
正确答案:
33.若intx;则实施下列程序段后输出是()。
for(x=10;x>3;x--){if(x%3)x--;--x;--x;printf(“%d”,x);}
A.63
B.74
C.62
D.73
正确答案:
34.已知:
chars[10],*p=s,则在下列语句中,错误语句是()。
A.p=s+5;
B.s=p+s;
C.s[2]=p[4];
D.*p=s[0];
正确答案:
35.以下程序输出结果是()。
main(){inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+1)];for(i=0;i<3;i++)k+=p[i]*2;printf(“%d”,k);}
A.20
B.21
C.22
D.23
正确答案:
36.实施下列程序段后,x、y和z值分别是()。
intx=10,y=20,z=30;if(x>y)z=x;x=y;y=z;
A.10,20,30
B.20,30,30
C.20,30,10
D.20,30,20
正确答案:
37.若inta,b,c;则为它们输入数据正确语句是()。
A.read(a,b,c);
B.scanf("%d%d%d",a,b,c);
C.scanf("%D%D%D",&a,&b,&c);
D.scanf("%d%d%d",&a,&b,&c);
正确答案:
38.利用fseek函数能够()。
A.改变文件位置指针
B.实现文件次序读写
C.实现文件读写
D.以上答案均正确
正确答案:
39.已知:
structsk{inta;floatb;}data,*p;若有p=&data,则对data中组员a正确引用是()。
A.(*p).data.a
B.(*p).a
C.p->data.a
D.p.data.a
正确答案:
40.不能正确为字符数组输入数据是()。
A.chars[5];scanf(“%s”,&s);
B.chars[5];scanf(“%s”,s);
C.chars[5];scanf(“%s”,&s[0]);
D.chars[5];gets(s);
正确答案:
北理工《C语言程序设计》在线作业
二、判定题(共10道试题,共20分。
)
1.设有变量定义chars[]=”hello”,则数组中有6个元素。
A.错误
B.正确
正确答案:
2.结构体变量在内存中所占字节数是由其各个组员所占字节总和。
A.错误
B.正确
正确答案:
3.在标准C语言中,全部函数在调用之前都要进行申明。
A.错误
B.正确
正确答案:
4.在C语言中,逻辑表示式中只许可出现逻辑型数据。
A.错误
B.正确
正确答案:
5.在C语言中,for语句后三个表示式必需都出现。
A.错误
B.正确
正确答案:
6."A"是一个字符常串量。
A.错误
B.正确
正确答案:
7.“%”运算两侧数据能够是任意类型数据。
A.错误
B.正确
正确答案:
8.在标准C语言中,能够用typedef定义类型,所以用typedef能够增加C语言数据类型。
A.错误
B.正确
正确答案:
9.在C语言中,以“r”方法不能打开并不存在文件。
A.错误
B.正确
正确答案:
10.在标准C语言中,在定义带参数宏时也要定义参类型。
A.错误
B.正确
正确答案:
北理工《C语言程序设计》在线作业
一、单选题(共40道试题,共80分。
)
1.C编译系统提供了对C程序编辑、编译、连接和运行环境,以下能够不在该环境下进行步骤是()。
A.编辑和编译
B.编译和连接
C.连接和运行
D.编辑和运行
正确答案:
2.不能正确为字符数组输入数据是()。
A.chars[5];scanf(“%s”,&s);
B.chars[5];scanf(“%s”,s);
C.chars[5];scanf(“%s”,&s[0]);
D.chars[5];gets(s);
正确答案:
3.要判定char型变量m是否是数字字符,能够使用下列表示式()。
A.0<=m&&m<=9
B.'0'<=m&&m<='9'
C.“0”<=m&&m<=“9”
D.前3个答案都是错误
正确答案:
4.已知:
chars[10],*p=s,则在下列语句中,错误语句是()。
A.p=s+5;
B.s=p+s;
C.s[2]=p[4];
D.*p=s[0];
正确答案:
5.下列对字符串定义中错误是()。
A.charstr[7]="FORTRAN"
B.charstr[]="FORTRAN"
C.char*str="FORTRAN"
D.charstr[]={'F','O','R','T','R','A','N','
正确答案:
6.C语言要求,调用一个函数时,实参变量和形参变量之间数据传输方法是()。
A.地址传输
B.值传输
C.由实参传给形参,并由形参传回给实参
D.由用户指定传输方法
正确答案:
7.以下程序输出是()。
main(){chara[2][5]={“6937”,”8254”};inti,j,s=0;for(i=0;i<2;i++)for(j=0;a[i][j]>'0'&&a[i][j]<='9';j+=2)s=10*s+a[i][j]-‘0’;printf(“s=%d”,s);}
A.6385
B.69825
C.63825
D.693825
正确答案:
8.已知:
struct{inti;charc;floata;}test;则sizeof(test)值是()。
A.4
B.5
C.6
D.7
正确答案:
9.若intx;则实施下列程序段后输出是()。
for(x=10;x>3;x--){if(x%3)x--;--x;--x;printf(“%d”,x);}
A.63
B.74
C.62
D.73
正确答案:
10.以下程序输出结果是()。
main(){inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+1)];for(i=0;i<3;i++)k+=p[i]*2;printf(“%d”,k);}
A.20
B.21
C.22
D.23
正确答案:
11.以下程序输出结果是()。
main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf(“%d,”x[i][2-i]);}
A.1,5,9
B.1,4,7
C.3,5,7
D.3,6,9
正确答案:
12.实施下列程序段后,x、y和z值分别是()。
intx=10,y=20,z=30;if(x>y)z=x;x=y;y=z;
A.10,20,30
B.20,30,30
C.20,30,10
D.20,30,20
正确答案:
13.已知:
inta,*p=&a;则下列函数调用中错误是()
A.scanf("%d",&a);
B.scanf("%d",p);
C.printf("%d",a);
D.printf("%d",p);
正确答案:
14.若在键盘上输入:
283.1900,想使单精度实型变量c值为283.19,则正确输入语句是()。
A.scanf("%f",&c);
B.scanf("8.4f",&c);
C.scanf("%6.2f",&c);
D.scanf("8f",&c);
正确答案:
15.以下()不是C语言特点。
A.语言表示能力
B.语言定义严格
C.数据结构系统化
D.控制步骤结构化
正确答案:
16.下面程序输出结果是()。
main(){inti,j;floats;for(i=6;i>4;i--){s=0.0;for(j=i;j>3;j--)s=s+i*j;}printf(“%f”,s);}
A.135.000000
B.90.000000
C.45.000000
D.60.000000
正确答案:
17.下列程序实施结果是()。
A=1;b=2;c=3;While(bA.1,2,0
B.2,1,0
C.1,2,1
D.2,1,1
正确答案:
18.实施以下程序段后,a,b,c值分别是()。
inta,b=100,c,x=10,y=9;a=(--x==y++)?
—x:
++y;if(x<9)b=x++;c=y;
A.9,9,9
B.8,8,10
C.9,10,9
D.1,11,10
正确答案:
19.利用fseek函数能够()。
A.改变文件位置指针
B.实现文件次序读写
C.实现文件读写
D.以上答案均正确
正确答案:
20.实施以下程序段后,c3值是()。
intc1=1,c2=2,c3;c3=c1/c2;
A.0
B.1/2
C.0.5
D.1
正确答案:
21.已知“inta=4,b=5,c;”,则实施表示式“c=a=a>b”后变量a值为()。
A.0
B.1
C.4
D.5
正确答案:
22.下面个选项组中,均属于C语言关键字一组是()。
A.auto,enum,include
B.switch,typedef,continue
C.signed,union,scanf
D.if,struct,type
正确答案:
23.若有以下定义和语句:
structstudent{intnum,age;};structstudentstu[3]={{1001,20},{1001,19},{1003,21}};structstudent*p=stu;则以下错误引用是()。
A.(p++)->num
B.p++
C.(*p).num
D.p=&stu.age
正确答案:
24.若inta,b,c;则为它们输入数据正确语句是()。
A.read(a,b,c);
B.scanf("%d%d%d",a,b,c);
C.scanf("%D%D%D",&a,&b,&c);
D.scanf("%d%d%d",&a,&b,&c);
正确答案:
25.下列说法中正确是()。
A.break用在switch语句中,而continue用在循环语句中。
B.break用在循环语句中,而continue用在switch语句中。
C.break能结束循环,而continue只能结束此次循环。
D.continue能结束循环,而break只能结束此次循环。
正确答案:
26.已知:
structsk{inta;floatb;}data,*p;若有p=&data,则对data中组员a正确引用是()。
A.(*p).data.a
B.(*p).a
C.p->data.a
D.p.data.a
正确答案:
27.下列程序段()。
x=3;do{y=x--;if(!
y){printf(“x”);continue;}printf(“#”);}while(1<=x<=2);
A.输出
B.
C.输出##x
D.是死循环
E.有语法错
正确答案:
28.为了显示一个文本文件内容,在打开文件时,文件打开方法应该时()。
A."r+"
B."w+"
C."wb+"
D."ab+"
正确答案:
29.下面描述中,不正确是()。
A.递归法关键是必需有一个递归终止条件。
B.递归算法要求语言含有反复自我调用子程序能力。
C.对于同一个问题,递推算法比递归算法实施时间要长。
D.递推算法总能够转换为一个递归算法。
正确答案:
30.main(argc,argv)中形式参数argv正确说明形式应该为()。
A.char*argv[]
B.charargv[][]
C.charargv[]
D.char*argv
正确答案:
31.C语言结构类型变量在程序实施期间()。
A.全部组员一直驻留在内存中
B.只有一个组员驻留在内存中
C.部分组员驻留在内存中
D.没有组员驻留在内存中
正确答案:
32.若有chara[80],b[80];则正确是()。
A.puts(a,b);
B.printf(“%s,%s”