2009 至 2010 学年第 1 学期 课程名称 C语言及程序设计A (本科)试卷 A
试卷类别:考试;考试形式:闭卷;使用班级:土木081-7、环本081-2、水工081-5
交通801-2
考试时间 120 分钟
题号
一
二
三
四
总分
分数
注意:所有的答案均需写在答题纸上,写在其他的地方不得分!
一、单项选择题(每题分,共0分);
数据的输入方式3, 4
则正确的输入语句是
A)scanf(“%f%f”,&x1,&x2);B)scanf(“%f%”, &x1,&x2);
C)scanf(“%f%lf”, &x1,&x2);Dscanf(“%%lf”, &x1,&x2);“y=%d”, (int)(7.8+(double)(15/2)));输出
A)y=13 B)C)D)y=16
5、能正确表示”x是大小写字母a”的C表达式是
A)x=’a’&&x=’A’
B)’a’||x=’A’
C)’a&&x==’A’
D)x==’a’||x==’A’
6、有switch语句
switch(id){
case 1:printf(“Janet”);break;
case 2: printf(“Paul”);break;
case 3:
case 5: printf(“Jerry”);break;
default: printf(“Sue”);
}
如果id=3,将
A)什么也不输出 B) C): D)输出Sue
15、声明语句:float s[4]={62.3,61.4,43.5,76.8};float *fp;令fp指向s[2]的正确语句是
fp=&s+2;
fp=&s[0]+2;
*fp=&s[2];
*fp=s[2];
二、分析程序,写出运行结果(每题4分,共20分)
1)
#include void main ( ) { int a,b; printf(“Please enter two numbers :”); scanf(“%d%d”,&a,&b);
printf(“%d/%d=%d\n%d%%%d=%d\n”,a,b,a/b,a,b,a%b);
}
Please enter two numbers :3 4
2)
#include
void main()
{ int a=1,b=3,c=5,d=5,x;
if(a
if(c
else if(a
if(b
else x=3;
else x=6;
else x=7;
printf(“x=%d\n”,x);
}
3)
#include
void main()
{ int m,n;
for(m=1;m<=5;m++){
for(n=1;n<=5-m;n++)?printf(“ “);?
for(n=1;n<=m;n++)?printf(“%d“,n);?
printf(“\n");?
}
}
2)判断m是否是素数
#include
int isprime(int x);
void main()
{ int m;
printf("please enter a number:");
scanf(“%d”,&m);
if( ③ ) printf(“%d is a prime.\n”,m);
else printf(“%d is not a prime.\n”,m);
}
int isprime(int x)
{int k,flag=1;
for(k=2;k
④ ;
}
3)计算多项式之和:sum=1+1/2+1/4+···1/50,结果保留两位小数
#include
void main()
{ int n,sum;
⑤ ;
for( n=2;n<=50;n+=2)sum= ⑥ ;
printf(“sum=%.2f\n ",sum);
}
4)将一维数组中的元素首尾颠倒
#define N 10
#include
void main()
{ int a[N], i,t;
for(i=0;i
for(i=0; ⑦ ;++i){
t=a[i];
a[i]=a[⑧];
a[⑧]=t;
}
for(i=0;i
}
答题纸
一、单项选择题(每题分,共0分)
B)
C)if(=100)printf(“%d”,x);当x不等于100时不执行语句printf(“%d”,x)