还剩8页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
程序设计试卷c
一、单选题本题共分,每小题分2021以下c语言常量中,表达错误的是_[a]off[b]
3.2c
0.5[c]
5.6[d]\n2c程序的基本结构有_2_[a]选择、重复和模块[b]顺序、选择和模块[c]顺序、选择和循环[d]逻辑、物理和程序3在c语言程序中,关于字符串的描述正确的是__3_[a]可定义一个字符串变量存储字符串;[b]可定义一个字符变量存储任意字符串;[c]可定义一个字符数组存储字符串;[d]可定义一个字符指针存储字符串;4在c语言中,用关键字__4__定义双精度类型变量[a]single[b]double[c]float[d]int5下面叙述中不正确的是—5―[a]不同函数中可以使用相同名字的变量[b]形式参数是局部变量[c]在一个函数内部的复合语句中定义的变量在本函数范围内有效[d]在一个函数内部定义的变量只能在本函数范围内有效6下面程序段的输出结果是_6―int i=100;whilei120i=i l;printf,i;[a]100[b]101[c]120[d]1217以下定义语句中正确的是[a]char a=a b=b,;[b]float a=b=
10.0;[c]int a=10,*b=a;[d]float*a,b=a;8已有定义int i,a
[10],*p;,则合法的赋值语句是—8―[a]p=100;[b]p=a
[5];[c]p=a
[2] 2;[d]p=a 2;scanfb�,;if10y= 10;else if0=0y=sqrt5* ep0/ 1;else y=tan*sin;printf ny=%f\n,y;#includestdio.hfloat factint n{float t=l.0;int i=l;while i=nt=t*i ;returnt;void mainoint n,i;float sum=l.0;scanf%d,n;for i=2;i=n;i sum=sum l.0/facti;printf%f\n,sum;#includestdio.h#includestdlib.hvoid mainoint i,j,n=0,temp,
[20];srandtimenull;printf原始数据\nw;fori=0;i=19;i {[i]=rand0 l;〃产生20个随机数ifi%5==0printfw\nff;printf%-6dn,[i];printf\nm;fori=0;i19;i {〃从大到小排序forj=0;j19-i;j if[j][j l]{temp=[j];[j]=[j l];[j l]=temp;}printf排序后数据\nb;fori=0;i20;i {ifi%5==0printfn\nn;printf%-6dn,[i];printf\n;9设有定义int a,*pl=a;以下scanf语句中能正确为变量a读入数据的是_____________9[a]scanf,pl;[b]scanf%d,a;[c]scanf“%d”,pl;[d]scanf w%dw,*pl;10以下程序段中与语句=abbc100;功能等价的是—10—[a]ifabbc=1else=0;[b]ifab||bc=1else=0;[c]ifa=b=0;[d]ifab=1;
二、程序填空题本题共分,每小题分302阅读下列程序说明和程序代码,在每小题提供的若干可选项中,挑选一个最佳的选项1【程序说明】输入整数n,输出共有n层的金字塔图形例如圆教学讲义@“h:\\o506sg zh.输入层薪4*kkkpressanykeytocontinue...।ii2n【程序代码】#include stdio.hvoid main{int i.j,n;char c=*;printf输入层数;scanf飞d,n;fori=l;11;i {forj=l;j=n-i;12printf;forj=l;⑶j {printf14,c;}printfw\nm;//换行,在内嵌循环结束后执行15【选项】11[a]i=n l[b]i=n[c]in[d]i=n12[a]i [b]j=i l[c]j [d]i=j l13[a]j=2*i-l[b]j=2*i-l[c]j=2*n-l[d]j=n14[a][b][c][d]15[a]}[b][c];[d]以上选项都不正确2【程序说明】输入年份判断是否闰年【程序代码】sincludo stdio.h main{int year,leap;scanf飞d,r,16;if year%4==0if year0-0if ycar@0==0leap=l;17lcap=0;}elseleap=l;}else18;if19printf rd is w,20;elseprintf%disnot,year;printf aleap year.\n;【选项】16[a]year[b]year[c]n[d]leap17[b]else;[c]else[d]else[a]else ififlcap==l18[a]leap=0[b]leap=l[c]year=0[d]year=l19[b]leap[c]leap=0[d]以上选项都不正[a]ycar=l确20[a]leap[b]leap[clyear[d]year3【程序说明】输入十个整数并保存在一维数组中,使数组中每个元素都增加10【程序代码】4include stdio.h main{int a
[10],i;⑵p=a;for i=0;i10;i {scanf%d\22;23;for p=a;pa 10;p printf an*;24;for;pa 10;p printfn%d,*p;【选项】2[a]int p
[10][b]int*p;[c]int p;[d]int a;12[a]a [b]a[p][c]*[d]pp22[a]p [b]a [c]*p [d]*a 32[a]*a=*a 10;[b]*p=*p 10;[c]*p=*p 10;[d]*a=*a i;42[a]p=a
[0][b]p=*a[c]p=a[d]*p=a5
三、程序阅读题本题共分,每小题分202阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确的答案1【程序说明】运行程序并回答问题【程序代码】#include stdio.h#include math.h voidmain{intn,s=0;scanf w%dw,n;n=fabs n;whilenl{s=s n;n=n/10;}printf%d\n,,s;【选项】26程序运行时输入312,输出—26_«[a]213[b]6[c]312[d]3为27程序运行时输入-5104,输出—27_o[al-5104[b]-4015[c]10[d]
51.042【程序说明】运行程序并回答问题【程序代码】#include stdio.h voidmainint a,b,c,temp;a=5;b=12;c=6;printf c,a=%d,b=%d,c=%d\n,a,b,c;ifab swapa,b;ifac swapa,c;printf a=%d,b=%d,c=%d\n,,,a,b,c;ifbc swapb,c;printfa=%d,b=%d,c=%d\n,a,b,c;void swapint*,int*y{int temp;temp=*;*=*y;*y=temp;【选项】28程序运行时,第1行输出—28[a]a=5,b=12,c=6[b]a=%d,b=%d,c=%d[c]a=
5.0,b=
12.0,c=
6.0[d]a=12,b=5,c=629程序运行时,第2行输出—28_o[a]a=5,b=12,c=6[b]a=6,b=12,c=5[c]a=12,b=5,c=6[d]a=12,b=6,c=530程序运行时,第3行输出—30_[a]a=5,b=12,c=6[b]a=6,b=12,c=5[c]a=12,b=5,c=6[d]a=12,b=6,c=53【程序说明】运行程序并回答问题【程序代码】4include stdio.hvoid main{char si
[40];int i=0;printf\nlnput astring;scanf si;while si[i]!=\0{if sl[i]=asl[i]=sl[i]=sl[i] 32;i ;printf\n%s\n,s1;【选项】31程序运行时,输入abc30dca,输出—31_[a]62[b]abc30dca[c]abc32程序运行时,输入face,输出—32_[a]face32[b]face[c]face4【程序说明】运行程序并回答问题【程序代码】#include stdio.hvoid main{file*fp;int i,j,,,y;scanf%d%d\i,j;fp=fopent.dat,w;fprintffp,%d\nw,i;if ij=j;else ifij=i;else=i j;fprintffp,%d\n,;fclosefp;fp=fopent.dat,r;fscanffp,%d%dy;printfff=%d,y=%d\n,,y;fclosefp;}【选项】33程序运行时,揄入2012输出—33[a]=20,y=20[b]=20,y=12[c]=12,y=20[a]=45,y=45[b]=10,y=10[c]=10,y=35[d]=35,y=35[d]dca34程序运行时,输入1035输出—34_o35程序运行时,输入1212输出—35_o[a]=24,y=24[b]=12,y=12[c]=24,y=12[d][d=]12f,y=24[d]=12,y=12
四、程序设计题本题共分,每小题分30101编写程序,要求从键盘上输入一个数给,计算并输出分段函数y的值 1010_[5x evy----------0ww10x \05-3提示平方根函数为sqrt,指数函数为ep,正切函数为tan,正弦函数为sin,所有这些函数在math,h头文件中2从键盘输入一个正整数n,编写程序计算1/1! 1/2! 1/3! …… l/n!的值并输出结果,要求定义和调用函数fact n计算n的阶乘3随机产生20个大于等于1小于等于100的数,并按从大到小排序请输出排序后的数,要求每行输出5个数浙江理工大学下学期期末考试--程序设计试题2005/2006c参考答案与评分标准
一、单选题本题共20分,每小题2分题号12473568910答案b cc b c a c da a
二、程序填空题本题共30分,每小题2分题号11121314151617181920答案b cb c a b c abc题号2122232425答案b da cc
三、程序阅读题本题共20分,每小题2分题号26272930323428313335答案bcacd bcac i
四、编程题本题共30分,每小题10分
1、#include stdio.h#include math.hvoid main{float,y;。