04年夏C语言程序设计期末考试A卷标准答案Word格式文档下载.docx
- 文档编号:20700972
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:7
- 大小:17.78KB
04年夏C语言程序设计期末考试A卷标准答案Word格式文档下载.docx
《04年夏C语言程序设计期末考试A卷标准答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《04年夏C语言程序设计期末考试A卷标准答案Word格式文档下载.docx(7页珍藏版)》请在冰豆网上搜索。
得分
一、填空题(每空1分,共10分)得分1.结构化程序由、、三种基本结构组成。
2.一个C程序总是从函数开始执行。
3.十进制数27,转化为八进制数为转化为十六进制数为。
4.逐个字符输入输出,用格式符,将整个字符串一次输入或输出,用格式符。
5.为表示关系x≥y≥z,应使用的C语言表达式是。
.从存储类别来讲,函数中的形参和在函数中定义的变量都属于变量。
二、单项选择题。
(每题1分,共10分)得分1.以下叙述中正确的是()A)构成C程序的基本单位是函数。
B)可以在一个函数中定义另一个函数。
C)main函数必须放在其它函数之前。
D)所有被调用的函数一定要在调用之前进行定义。
2.以下选项中合法的用户标识符是()
A)intB)_a12C)12wD)stu#8
3.已定义c为字符型变量,则下列语句中正确的是()
A)c='
97'
;
B)c=97;
C)c=97;
D)c=a;
4.已知i,j,k为int型变量,若从键盘输入20;
19;
10<
CR>
(<
代表enter),使i的值为20,j的值为19,k的值为10,以下选项中正确的输入语句为()
A)scanf(%d;
%d;
%d,&
i,&
j,&
k);
B)scanf(---,&
C)scanf(\%d;
%d;
%d,i,j,k);
D)scanf(i=%d,j=%d,k=%d,&
5.以下程序,执行后的输出结果是()
main()
{intk=4,i=3,m;
m=(k+=i*=k);
printf(“%d,%d\n”,m,i);
}
A)20,16B)20,15C)28,12D)16,12
6.以下函数的类型是()fff(floatx)
x*x);
}”“%d\n{printf(A)float类型B)void类型C)int类型D)无法确定
7.以下程序中NUM的值是()A)5B)6C)8D)9
#defineN2#defineMN+1#defineNUM(M+1)*M/2main(){inti;
for(i=1;
i<
=NUM;
i++);
printf(“%d”,i);
}
8.s的值为(以下程序段执行后)continue;
s=s+1;
}B)5C)8D)9以下程序的输出结果是()
main(){intx=20,y=22,t=30;
if(x>
=y)t=x;
x=y;
y=t;
printf(“%d,%d\n”,x,y);
}A)20,22B)22,20C)20,30D)22,30
10.设有如下定义
structaa
{charname[10];
intage;
charsex;
}std[3],*p=std;
下面各输入语句中错误的是()
scanf(%d,&
(*p).age);
scanf(%s,&
std.name);
scanf(%c,&
std[0].sex)scanf(%c,&
(p->
sex));
D)C)B)A)
7分,共31分)—6题每题4分,7题三、写出程序或程序段的执行结果,将答案直接写在横线上。
(1得分1.有以下程序main()
{intp[7]={11,13,14,15,16,17,18},i=0,k=0;
while(i<
7&
&
p[i]%2)
{k=k+p[i];
i++;
printf(%d\n,k);
执行后输出结果是.2有以下程序main(){intx[10]={8,19,6,5,11,3,22,16,3},*s;
s=x+4;
printf(%d\n,s[3]);
执行后输出结果是
.3以下程序的运行结果为
main()
9,10,3}};
{
inti,sum=0;
for(i=0;
4;
i++)sum+=aa[i][2];
printf(“%d”,sum);
4.已有文本文件test.txt,其中的内容为:
Hello,everyone!
。
以下程序中,文件test.txt已正确为“读”而打开,由文件指针fr指向该文件,则程序的输出结果是
#include<
stdio.h>
main(){FILE*fr;
charstr[40];
……
fgets(str,5,fr);
printf(%s\n,str);
fclose(fr);
5.有以下程序
main(intargc,char*argv[])
{intn,i=0;
while(argv[1][i]!
='
\0'
)
{n=fun();
i++;
printf(%d\n,n*argc);
intfun()
{staticints=0;
s+=1;
returns;
假设程序经编译、连接后生成可执行文件exam.exe,若键入以下命令行
exam1234<
回车>
则运行结果为
6.以下程序运行后的输出结果是
fun(intx)
{if(x/2>
0)fun(x/2);
printf(%d,x);
main(){fun(8);
7.以下程序运行后输入:
2,abcpq<
,则输出结果是
string.h>
move(char*str,intn)
{chartemp;
inti;
temp=str[n-1];
str[0]=temp;
for(i=n-1;
i>
0;
i--)str[i]=str[i-1];
main(){chars[50];
intn,i,z;
scanf(%d,%s,&
n,s);
z=strlen(s);
i<
=n;
i++)move(s,z);
printf(%s\n,s);
四、程序填空,直接将语句写在横线上(共15分)得分
1.s中最大元素的下标,数组中元素的个数由t传入,请填空(2×
2=4分findmax以下返回数组)
findmax(ints[],intt)
{intk,p;
for(p=0,k=p;
p++)
if(s[p]>
s[k]);
return;
2.s中的所有数字字符,请填空(2×
2=4分)以下函数的功能是删除字符串
voiddele(char*s)
{intn=0,i;
for(i=0;
s[i];
i++)
if()s[n++]=s[i];
s[n]=;
3.以下程序的功能是调用函数fun计算:
m=1-2+3-4+…+19-20,并输出结果。
请填空(2×
2=4分)
intfun(intn){intm=0,f=1,i;
i++)
{m+=i*f;
f=;
returnm;
main(){printf(m=%d\n,);
4.请在以下程序第一行的下划线处填写适当内容,使程序能正确运行(1×
3=3分)
_______(double,double);
main(){doublex,y;
scanf(%lf%lf,&
x,&
y);
printf(%lf\n,max(x,y));
doublemax(doublea,doubleb)
{return(a>
b?
a:
b);
五、程序改错,程序中某些语句有错误,将程序中的错误用划出来,将改正后的语句写在对应错误语得分句后的横线上,不得增行或删行,不得改变程序的结构,改正后的程序要能够正常运行。
(共11分)
1.以下程序的功能为计算圆的面积,r为半径。
(6分)
#includestdio.h;
main();
floatr,s;
r=5.0;
s=3.14159*r*r;
printf(“%f\n”,s)
2.以下程序为从两个数中找出大者并输出,请改正程序中的错误,使之实现这一功能。
(5分)
{inta,b,max;
scanf(“%d,%d”,a,b);
max=a<
b?
a:
b;
printf(%d,max);
六、编程题(共23分)得分
1.x(x<
1)有一数学函数:
y=2x-1(1≤x≤20)
4x-11(x≥20)
写一程序,输入x的值,输出y的值(8分)。
参考答案:
2.对20个整数按由大到小的顺序排序,并输出结果。
(15分)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 04 年夏 语言程序设计 期末考试 标准答案