阅读程序题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
苏州市职业大学2010─2011学年第二学期试卷
《计算机语言C》答案与评分标准
一、阅读程序题 (每空1分,共106分)
1. 以下程序的输出结果是_______________。
#define MCRA(m) 2*m
#define MCRB(n,m) 2*MCRA(n)+m
main()
{ int i=2,j=3;
printf("%d\n",MCRB(j,MCRA(i)));
}
【答案】
16
2. 以下程序用以删除字符串所有的空格,请填空。
#include
main()
{ char s[100]={"Our teacher teach C language!"};int i,j;
for(i=j=0;s[i]!=‟\0‟;i++)
if(s[i]!= ' ') {s[j]=s[i];j++;}
s[j]= 【】
printf(“%s\n”,s);
}
【答案】
'\0'
3. 下列程序的输出结果是
main( )
{ int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0;
for(i=0;i<3;i+ +) s+ =a[i][i]+a[i][3-i-1];
printf("%d\n",s);
}
【答案】
30
4. 有一下程序
#include
main()
{ int f,f1,f2,i;
f1=0;f2=1;
printf("%d %d ",f1,f2);
for(i=3;i<=5;i++)
{ f=f1+f2; printf("%d",f);
f1=f2; f2=f;
}
printf("\n");
}
程序运行后的输出结果是
【答案】
0 1 123
5. 设有以下程序: 程序运行后,如果从键盘上输入1298;则输出结果为_______________。main()
{ int n1,n2;
scanf("%d",&n2);
while(n2!=0)
{ n1=n2%10;
n2=n2/10;
printf("%d",n1);
}
}
【答案】
8921
6. 有以下程序
#include
int f(int x,int y)
{return((y-x)*x);}
main()
{int a=3,b=4,c=5,d;
d=f(f(a,b),f(a,c));
printf("%d\n",d);
}
程序运行后的输出结果是
【答案】
9
7. 以下程序运行后的输出结果是_______________。
main()
{ int i,m=0,n=0,k=0;
for(i=9; i<=11;i++)
switch(i/10)
{ case 0: m++;n++;break;
case 10: n++; break;
default: k++;n++;
}
printf("%d %d %d\n",m,n,k);
}
【答案】
1 3 2
8. 有以下程序
#include
main()
{ int i, j;
for(i=3; i>=l; i--)
{ for(j=1; j<=2; j++) printf("%d", i+j);
printf("\n");
}
}
程序的运行结果是
【答案】
4 5
3 4
2 3
9. 以下程序运行后的输出结果是_______________ int a=5;
fun(int b)
{ static int a=10;
a+=b++;
printf("%d ",a);
}
main()
{ int c=20;
fun(c);
a+=c++;
printf("%d\n",a);
}
【答案】
30 25
10. 下列程序的运行结果是:
fun(int t[ ],int n)
{ int i,m;
if(n= =1)return t[0];
else
if(n>=2){m=fun(t,n-1); return m;}
}
main( )
{ int a[ ]={11,4,6,3,8,2,3,5,9,2};
printf("%d\n",fun(a,10));
}
【答案】
11
11. 有以下程序
#include
main()
{char*s={"ABC"};
do
{printf("%d",*s%10);s++;
}
while(*s);
}
注意:字母A的ASCII码值为65。程序运行后的输出结果是【答案】
567
12. 以下程序的输出结果是_______________。
main()
{ int s,i;
for(s=0,i=1;i<3;i++,s+=i)
printf("%d\n",s);
}
【答案】
5
13. 有以下程序
#include
main()
{int a=1,b=2,c=3,d=0;
if(a==1&&b++==2)
if(b!=2||c--!=3)
printf("%d,%d,%d\n",a,b,c);
else printf("%d,%d,%d\n",a,b,c);
else printf("%d,%d,%d\n",a,b,c);
}
程序运行后输出结果是
【答案】
1,3,3
14. 有以下程序
#include
struct st
{ int x, y;) data[2]={l,10,2,20};
main()
{ struct st *p=data;
printf("%d,", p->y); printf("%d\n",(++p)->x);
}
程序的运行结果是
【答案】
10,2
15. 下列程序的输出结果是_______________。
main()
{ int a=9, b=2;
float x= 6.6 , y=1.1,z;
z=a/2+b*x/y+1/2;