中国石油大学(华东)2015年春季学期《C语言》在线考试答案
一、单选题(共 10 道试题,共 20 分。 ) 1. C 语言中,函数返回值的类型是由 A. return 语句中的表达式类型决定 B. 调用函数的主调函数类型决定 C. 调用函数时的临时类型决定
D. 定义函数时所指定的函数类型决定 正确答案:B
2. 设有 int x=11;则表达式(x *1/3)的值是 A. 3 B. 4 C. 11 D. 12
正确答案:A
3. 在微型计算机系统中,存储一个汉字的国标码所需要的字节数是 A.1 B.2 C.3 D.4
正确答案:B
4. 以下非法的赋值语句是 A.n=(i=2, i); B. j ; C. (i 1); D.x=j>0;
正确答案:C
5. 对于 int a[ ] = {1,2,3,4,5,6}, p; p=a; *(p 3) = 2; 则*p, *(p 3)的值是 A. 1 5
B. 1 3 C. 1 4 D. 1 6
正确答案:C
6. 设 a=3,b=4,c=-5,则逻辑表达式:a || b c && b==c 的值是 A.1 B.0 C.非0 D.语法错
正确答案:A
7. 以下选项中,与 k= n 完全等价的表达式是 A.k=n,n=n 1 B.n=n 1,k=n C. k= n D.k =n 1
正确答案:C
8. 设有如下程序段: int x=2, y=3;
printf(\ 则以下叙述中正确的是
A. 输出语句中格式说明符的个数少于输出项的个数,不能正确输出 B. 运行时产生出错信息 C. 输出值为 2 D. 输出值为 3 正确答案:D
9. 语句: printf(\的输出结果是 A.无输出 B.结果不确定 C.1 D.2
正确答案:C
10. 假设已定义 char c[8]= \; int i; 则下面的输出函数调用中错误的是
A. printf("%s",c);
B. for(i=0;i<8;i++) printf("%c",c[i]); C. puts(c)
D. for(i=0;i<8;i++) puts(c[i]); 正确答案:D
二、简答题(共 3 道试题,共 30 分。 )
#include void main()
{inti,k=1,njie=1; float sum=0;
for(i=1;i<=10;i++) {njie=njie*i;
sum=sum+njie*k; k=-1*k; }
printf(\
#include
void main() {int n,i;
printf(“please enter a integer number,n=?”); scanf(“%d”,&n); for(i=2;i<=n-1;i++) if(n%i==0)break; if(i
#include
void main()
{ longint t=0,s=0,i; for(i=1;i<=6;i++) {
t=i+t*10; s=s+t; }
printf(”s=%ld\\n”,s); }
三、其他题(共 10 道试题,共 50 分。 )
1. 读程序,写出程序执行结果 #includevoid ex( ) { static int x=5 ; --x ;
printf(“%d”,x) ; - void main ( ) , ex( ); ex( ); ex( ); - 正确答案:432
2. 读程序,写出程序执行结果 #include#define MAX(a,b) (a>b ? a : b)+1 void main()
, int i=6,j=8; printf(“%d\\n”,MAX(i,j)); - 正确答案:432
3. 读程序,写出程序执行结果 #includevoid main() { int k=4,n=0; for( ; nk,n); }
正确答案:good
4. 读程序,写出程序执行结果 #includevoid main() { int x[]={1,2,3};int s=1,i,*p=x;
for(i=0;i<3;i++) s*=*(p+i); printf(“%d\\n”,s); - 正确答案:6
5. 读程序,写出程序执行结果 #include#include void main() { char a[10]=\;
char b[]=\; puts(a); puts(b); puts(strcat(a,b)); } 正确答案: abc defg abcdefg
6. 读程序,写出程序执行结果 #include void main() { int
aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}; int i,s=0 ; for(i=0;i<4;i++) s+=aa*i+*2+; printf(“%d\\n”,s); - 正确答案:29
7. 读程序,写出程序执行结果 #include void fun(char *w, int n) { char t, *s1, *s2; s1=w; s2=w+n-1; while(s1{ char p[]=\ 正确答案:17
8. 读程序,写出程序执行结果 #includevoid main() { int s,i;
for(s=0,i=1;i<5;i++,s+=i) ; printf(“%d\\n”,s); } 正确答案:14
9. 读程序,写出程序执行结果 #includeint d=1; fun(int p) { int d=5; d+=p++;
printf(“%d”,d); - void main() , int a=3; fun(a); d+=a++; printf(\
正确答案:84