www.vu8o.com
??------------------------------------------------------------------------------------------------------------------------------
北理工《C语言程序设计》在线作业 一、单选题: 1.(单选题)下面程序的输出结果是()。
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\\n”,s);} (满分
A135.000000 B90.000000 C45.000000 D60.000000 正确:C
2.(单选题)在以下对C语言的描述中,正确的是()。 (满分
A在C语言中调用函数时,只能将实参数的值传递给形参,形参的值不能传递给实参 BC语言函数既可以嵌套定义又可以递归调用 C函数必须有返回值,否则不能使用函数
DC语言程序中有定义关系的所有函数都必须放在同一源文件中 正确:A
3.(单选题)以下()不是C语言的特点。 (满分 A语言的表达能力 B语言定义严格 C数据结构系统化 D控制流程结构化 正确:B
4.(单选题)已知:chars[10],*p=s,则在下列语句中,错误的语句是()。 (满分 Ap=s+5; Bs=p+s; Cs[2]=p[4]; D*p=s[0]; 正确:
5.(单选题)以下正确的数组定义语句是()。 (满分 Ainty[1][4]={1,2,3,4,5 Bfloatx[3][]={{1 Clongs[2][3]={{1 Ddoublet[][3]={0 正确:
6.(单选题)已知:inta,*p=&a;则下列函数调用中错误的是() (满分:) Ascanf(\\%d\\,&a); Bscanf(\\%d\\,p); Cprintf(\\%d\\,a); Dprintf(\\%d\\,p); 正确:
7.(单选题)执行以下程序段后,c3的值是()。intc1=1,c2=2,c3;c3=c1/c2; (满分:) A0 B1/2 C0.5 D1 正确:
8.(单选题)说明语句\\int(*p)();\\的含义是()。 (满分:) Ap是一个指向一维数组的指针变量 Bp是一个指针变量,指向一个整型数据
Cp是一个指向函数的指针,该函数的返回值是一个整型 D以上都不对 正确:
9.(单选题)若在键盘上输入:283.1900,想使单精度实型变量c的值为283.19,则正确的输入语句是()。
www.vu8o.com
??------------------------------------------------------------------------------------------------------------------------------
(满分:)
Ascanf(\\%f\\,&c); Bscanf(\\8.4f\\,&c); Cscanf(\\%6.2f\\,&c); Dscanf(\\8f\\,&c); 正确:
10.(单选题)要判断char型变量m是否是数字字符,可以使用下列表达式()。 (满分:) A0<=m&&m<=9 B'0'<=m&&m<='9' C“0”<=m&&m<=“9” D前3个都是错误的 正确:
11.(单选题)下面个选项组中,均属于C语言关键字的一组是()。 (满分:) Aauto,enum,include
Bswitch,typedef,continue Csigned,union,scanf Dif,struct,type 正确:
12.(单选题)指出程序结束时,j、i、k的值分别是()。
main(){inta=10,b=5,c=5,d=5,i=0,j=0,k=0;for(;a>b;++b)i++;while(a>++c)j++;dok++;while(a>d++);} (满分:)
Aj=5,i=4,k=6; Bi=5,j=4,k=6; Cj=6,i=5,k=7 Dj=6,i=6,k=6; 正确: 13.(单选题)若有以下定义和语句:structstudent{intnum,age;};structstudentstu[3]={{1001,20},{1001,19},{1003,21}};structstudent*p=stu;则以下错误的引用是()。 (满分:) A(p++)->num Bp++
C(*p).num Dp=&stu.age 正确:
14.(单选题)执行下面的语句后x的值为()。inta=14,b=15,x;charc='A';x=((a&b)&&(c<'a')); (满分:) ATRUE BFLASE C0 D1 正确:
15.(单选题)若inta,b,c;则为它们输入数据的正确的语句是()。 (满分:) Aread(a,b,c);
Bscanf(\\%d%d%d\\,a,b,c); Cscanf(\\%D%D%D\\,&a,&b,&c); Dscanf(\\%d%d%d\\,&a,&b,&c); 正确: 16.(单选题)已知:structsk{inta;floatb;}data,*p;若有p=&data,则对data中的成员a的正确引用是()。 (满分:)
A(*p).data.a B(*p).a Cp->data.a Dp.data.a
www.vu8o.com
??------------------------------------------------------------------------------------------------------------------------------
正确:
17.(单选题)下列说法中正确的是()。 (满分:) Abreak用在switch语句中,而continue用在循环语句中。 Bbreak用在循环语句中,而continue用在switch语句中。 Cbreak能结束循环,而continue只能结束本次循环。 Dcontinue能结束循环,而break只能结束本次循环。 正确:
18.(单选题)已知:intx=1,y=2,z;则执行z=x>y?++x:++y;则z的值为()。 (满分:) A1 B2 C3 D4 正确: 19.(单选题)以下程序的输出结果是()。main(){inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a=i;for(i=0;i<3;i++)p=a[i*(i+1)];for(i=0;i<3;i++)k+=p*2;printf(“%d”,k);} (满分:) A20 B21 C22 D23 正确: 20.(单选题)下列程序执行的结果是()。A=1;b=2;c=3;While(b 21.(单选题)执行下列程序段后,x、y和z的值分别是()。intx=10,y=20,z=30;if(x>y)z=x;x=y;y=z; (满分:) A10,20,30 B20,30,30 C20,30,10 D20,30,20 正确: 22.(单选题)已知“inta=4,b=5,c;”,则执行表达式“c=a=a>b”后变量a的值为()。 (满分:) A1 B0 C4 D5 正确: 23.(单选题)C语言结构类型变量在程序执行期间()。 (满分:) A所有成员一直驻留在内存中 B只有一个成员驻留在内存中 C部分成员驻留在内存中 D没有成员驻留在内存中 正确: 24.(单选题)在C语言的函数定义过程中,如果函数finA调用了函数funB,函数funB又调用了函数funA,则()。 (满分:) A称为函数的直接递归 B称为函数的间接递归 C称为函数的递归定义 DC语言中不允许这样的递归形式 www.vu8o.com ??------------------------------------------------------------------------------------------------------------------------------ 正确: 25.(单选题)已知:struct{inti;charc;floata;}test;则sizeof(test)的值是()。 (满分:) A4 B5 C6 D7 正确: 26.(单选题)main(argc,argv)中形式参数argv的正确说明形式应当为()。 (满分:) Achar*argv[] 正确: 27.(单选题)不能正确为字符数组输入数据的是()。 (满分:) Achars[5];scanf(“%s”,&s); Bchars[5];scanf(“%s”,s); Cchars[5];scanf(“%s”,&s[0]); Dchars[5];gets(s); 正确: 28.(单选题)为了显示一个文本文件的内容,在打开文件时,文件的打开方式应当时()。 (满分:) A\\r+\\ B\\w+\\ C\\wb+\\ D\\ab+\\ 正确: 29.(单选题)if语句的控制条件()。 (满分:) A只能用关系表达式 B只能用关系表达式或逻辑表达式 C只能用逻辑表达式 D可以是任何表达式 正确: 30.(单选题)若intx;则执行下列程序段后输出是()。for(x=10;x>3;x--){if(x%3)x--;--x;--x;printf(“%d”,x);} (满分:) A63 B62 C74 D73 正确: 31.(单选题)以下对C语言中联合类型数据的正确叙述是()。 (满分:) A一旦定义了一个联合变量后,即可引用该变量或该变量中的任意成员 B一个联合变量中可以同时存放其所有成员 C一个联合变量中不能同时存放其所有成员 D联合类型数据可以出现在结构类体型定义中,但结构体类型数据不能出现在联合类型定义中 正确: 32.(单选题)以下程序的输出结果是()。main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf(“%d,”x[2-i]);} (满分:) A1,5,9 B1,4,7 C3,5,7 D3,6,9 正确: 33.(单选题)C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递方式是()。 (满分:) A地址传递 B值传递 www.vu8o.com ??------------------------------------------------------------------------------------------------------------------------------ C由实参传给形参,并由形参传回给实参 D由用户指定传递方式 正确: 34.(单选题)下列对字符串的定义中错误的是()。 (满分:) Acharstr[7]=\\FORTRAN\\ Bcharstr[]=\\FORTRAN\\ Cchar*str=\\FORTRAN\\ Dcharstr[]={'F','O','R','T','R','A','N',' 正确: 35.(单选题)下面描述中,不正确的是()。 (满分:) A递归法的关键是必须有一个递归终止的条件。 B递归算法要求语言具有反复自我调用子程序的能力。 C对于同一个问题,递推算法比递归算法的执行时间要长。 D递推算法总可以转换为一个递归算法。 正确: 36.(单选题)C编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是()。 (满分:) A编辑和编译 B编译和连接 C连接和运行 D编辑和运行 正确: 37.(单选题)以下程序的输出是()。main(){chara[2][5]={“6937”,”8254”};inti,j,s=0;for(i=0;i<2;i++)for(j=0;a[j]>'0'&&a[j]<='9';j+=2)s=10*s+a[j]-‘0’;printf(“s=%d\\n”,s);} (满分:) A6385 B69825 C63825 D693825 正确: 38.(单选题)执行以下程序段后,a,b,c的值分别是()。inta,b=100,c,x=10,y=9;a=(--x==y++)?—x:++y;if(x<9)b=x++;c=y; (满分:) A9,9,9 B8,8,10 C9,10,9 D1,11,10 正确: 39.(单选题)利用fseek函数可以()。 (满分:) A改变文件的位置指针 B实现文件的顺序读写 C实现文件的随机读写 D以上均正确 正确: 40.(单选题)若有chara[80],b[80];则正确的是()。 (满分:) Aputs(a,b); Bprintf(“%s,%s”a[],b[]); Cputchar(a,b); Dputs(a);puts(b); 正确: 三、判断题: 41.(判断题)“%”运算两侧的数据可以是任意类型的数据。 (满分:) A错误 B正确