|
|
2015年秋季学期《C语言》在线考试(适用于2015年12月份考试)
试卷总分:100 测试时间:--
一、单选题(共10道试题,共20分。)
1.以下非法的赋值语句是
A. n=(i=2, i);
B. j ;
C. (i 1);
D. x=j>0;
满分:2分
2.判断字符串s1是否大于字符串s2,应该使用
A. if(s1>s2)
B. if(strcmp(s1,s2))
C. if(strcmp(s2,s1)>0)
D. if(strcmp(s1,s2)>0)
满分:2分
3.已知:int a[ ][3]={1,2,3,4,5,6,7,8,9,0}; 则数组a的第一维的大小是
A. 2
B. 3
C. 4
D. 无法确定;
满分:2分
4.以下不合法的赋值语句是
A. x=(1,y=2);
B. ++x;
C. x=y=15;
D. y=int(x);
满分:2分
5.在C语言中,数字029是一个
A. 八进制数
B. 十进制数
C. 十六进制数
D. 非法数
满分:2分
6.能将高级语言编写的源程序转换为目标程序的软件是
A. 汇编程序
B. 编辑程序
C. 解释程序
D. 编译程序
满分:2分
7.设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y,z的值分别是
A. 1,1,1
B. 1,2,0
C. 0,1,1
D. 0,2,0
满分:2分
8.设有定义 int a=3,b=4,c=5; ,则以下表达式中,值为0的表达式是
A. a&&b
B. a<=b
C. a||b c&&b-c
D. !((a<b)&&!c||1)
满分:2分
9.以下选项中,与k= n完全等价的表达式是
A. k=n,n=n 1
B. n=n 1,k=n
C. k= n
D. k =n 1
满分:2分
10.C语言中基本数据类型有
A. 整型、实型、逻辑型
B. 整型、字符型、逻辑型
C. 整型、实型、字符型
D. 整型、实型、字符型、逻辑型
满分:2分
二、简答题(共3道试题,共30分。)
1.
编程题:写一个判断素数的函数。要求在主函数中输入一个整数并输出相应的判断信息。
(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
2.
编程题:编写函数change使输入的字符串按反序存放,在主函数中输入和输出字符串。例如输入是:12345abcde,则输出为:edcba54321
(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
3.
编程题:编程计算:s=1+12+123+1234+12345+123456 (必须用循环控制语句实现)
(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
三、其他题(共10道试题,共50分。)
1.
读程序,写出程序执行结果
#include <stdio.h>
int fun(char *s1,char *s2)
{ int i=0;
while(s1[i]==s2[i] && s2[i]!='\0') i++;
return (s1[i]=='\0' && s2[i]=='\0');
}
void main()
{ char p[10]= "abcdef", q[10]= "ABCDEF"
printf("%d\n",fun(p,q));
}
2.读程序,写出程序执行结果
#include <stdio.h>
#include <string.h>
int stre(char *s)
{ int num=0;
while(*(s+num)!=‘\0’)num++;
return num;
}
void main()
{ char str[]="students",*p=str;
printf(“%d\n”,stre(p));
}
3.
读程序,写出程序执行结果
#include <stdio.h>
char fun(char *s)
{ if( *s >= ¢a¢ && *s <= ¢z¢ )
*s=*s-32;
return *s;
}
void main()
{ char a[20]="Welcome",*p,ch;
for(p=a;*p!=¢\0¢;p++)
{ ch=fun(p);
putchar(ch);
} }
4.
读程序,写出程序执行结果
#include <stdio.h>
void main()
{ int a[3][4]={{1,2,3,4},{9,7,10,6},{-1,8,-5,5}};
int i,j,row=0,colum=0,max;
max=a[0][0];
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
if(a[i][j]>max)
{ max=a[i][j];
row=i;
colum=j;
}
printf("max=%d,row=%d,colum=%d",max,row,colum);
}
5.
读程序,写出程序执行结果
#include <stdio.h>
void main()
{ int k=4,n=0;
for( ; n<k ; )
{ n++;
if(n%3!=0) continue;
k- -;
}
printf("%d,%d\n",k,n);
}
6.
读程序,写出程序执行结果
#include <stdio.h>
int f( )
{ int s=1;
static int i=0;
s+=i; i++;
return s ;
}
void main()
{ int i,a=0;
for(i=0;i<3;i++) a+=f( );
printf("%d\n",a);
}
7.
读程序,写出程序执行结果
#include <stdio.h>
#define S(a,b) (a)*(b)
void main()
{ int a=3 ,area;
area=S(a,a+3) ;
printf("area=%d\n",area);
}
8.
读程序,写出程序执行结果
#include <stdio.h>
void main()
{ int x=4;
if(x++>=5)
printf(“%d\n”, x) ;
else
printf(“%d\n”, x--) ;
}
9.
读程序,写出程序执行结果
#include <stdio.h>
void main()
{ int i;
for (i=0; i<3; i++)
switch (i)
{ case 1: printf("%d ", i);
case 2: printf("%d ", i);
default : printf("%d ", i);
}
}
10.
读程序,写出程序执行结果
#include <stdio.h>
#include <string.h>
void main()
{ char a[10]="abc";
char b[]="defg";
puts(a);
puts(b);
puts(strcat(a,b));
}
|
|