C语言程序设计模拟题4.docx
- 文档编号:25996071
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:12
- 大小:22KB
C语言程序设计模拟题4.docx
《C语言程序设计模拟题4.docx》由会员分享,可在线阅读,更多相关《C语言程序设计模拟题4.docx(12页珍藏版)》请在冰豆网上搜索。
C语言程序设计模拟题4
C语言程序设计模拟题4
C语言程序设计模拟题4
一、程序阅读与填空(24小题,每小题3分,共72分)
1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
计算并输出下式的值,要求精确到最后一项的绝对值小于10-3(保留4位小数)。
运行示例:
sum=0.8361
【程序】
#include
#include
main()
{intdenominator=1,flag=1;
doubleitem,sum=0;
_d__
(1)____
while(__a__
(2)___){
__c_(3)____
denominator=denominator+3;
flag=-flag;
}
printf("sum=__b_(4)____\n",sum);
}
【供选择的答案】
(1)
[A]item=0;[B]item=0.0001
[C];[D]item=2
(2)
[A]fabs(item)>=1E-3[B]fabs(item)<1E-3
[C]fabs(item)>=0.0001[D]fabs(item)<0.001
(3)
[A]sum=sum+item;item=flag*1.0/denominator;
[B]sum=sum+flag*1.0/denominator;
[C]item=flag*1.0/denominator;sum=sum+item;
[D]item=item+flag*1.0/denominator;
(4)
[A]%.0f[B]%.4f[C]%f[D]%4.f
2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】输出1到100之间的所有完数。
要求定义和调用函数is(n)判断n是否为完数,若n为完数则返回1,否则返回0。
完数就是因子和与它本身相等的数,1不是完数。
运行示例:
628
【程序】
#include
main()
{inti;intis(intn);
for(i=1;i<=100;i+1)
if(___b(5)____)
printf(“%d”,i);
}
intis(intn)
{inti,sum;
_c_(6)___
sum=0;
for(i=1;i<=n/2;i++)
if(_a__(7)____)
sum=sum+i;
if(_d_(8)__)return1;
elsereturn0;
}
【供选择的答案】
(5)
[A]is(i)==0[B]is(i)!
=0
[C]!
is(n)[D]is(n)
(6)
[A]if(n!
=1)return1;[B]if(n!
=1)return0;
[C]if(n==1)return0;[D]if(n==1)return1;
(7)
[A]n%i==0[B]n%i!
=0
[C]i%n==0[D]i%n!
=0
(8)
[A]n==0[B]sum!
=n[C]i>n/2[D]sum==n
3.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】计算并输入Fibonacci序列前10项之和。
要求定义和调用函数fun(fib,n),该函数将Fibonacci序列前n项的值存放在一维数组fib中。
Fibonacci序列:
1,1,2,3,5,8,13,21,34,55,……,该序列的第一个数和第二个数都是1,从第三个数开始,每个数是前两个数之和。
运行示例:
sum=143
【程序】
#include
main()
{inti,sum,a[10];
_b__(9)____
__c_(10)____
sum=0;
for(i=0;i<10;i++)
sum=sum+_b___(11)___;
printf(“sum=%d”,sum);
}
voidfun(intfib[],intn)
{inti;
fib[0]=fib[1]=1;
for(i=2;i _a__(12)____ } 【供选择的答案】 (9) [A]fun(intfib[],intn);[B]voidfun(intfib[],intn) [C];[D]voidfun(intfib[],intn); (10) [A]fun(fib,n);[B]fun(a[],10); [C]fun(a,10);[D]fun(a[10],10); (11) [A]fib[i][B]a[i][C]a[10][D]fib[0] (12) [A]fib[i]=fib[i-1]+fib[i-2]; [B]fib[i-1]=fib[i-2]+fib[i-3]; [C]fib[i+1]=fib[i]+fib[i-1]; [D]fib[i]=fib[i-1]+fib[i+1]; 4.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】 #include #defineS(a,b)(a)>(b)? (a): (b) intf1(charch) {intgrade; switch(ch){ case“A”: grade=95;break; case“B”: grade=85;break; case“C”: grade=75; case“D”: grade=65;break; default: grade=0; } returngrade; } intf2() {staticintk=1,s; s=s+k; k++; returns; } intf3(intn) {if(n==1)return2; elsereturnf3(n-1); } main() {inti; printf(“%d\n”,f1(‘C’)); for(i=1;i<=3;i++) f2(); printf(“%d\n”,f2()); printf(“%d\n”,f3(4)); printf(“%d\n”,S(3,2+2)); } 【问题】 (13) 程序运行时,第1行输出a(13) [A]65[B]0 [C]75[D]95 (14) 程序运行时,第2行输出a(14) [A]10[B]1 [C]6[D]2 (15) 程序运行时,第3行输出b(15) [A]24[B]2[C]10[D]1 (16) 程序运行时,第4行输出b(16) [A]3[B]4[C]5[D]1 5.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】 程序1 #include main() {inti,j,a[3][3]={1,0,0,4,5,0,7,8,9}; intflag=1; for(i=0;i<3;i++) for(j=0;j flag=a[i][j]; printf(“%d\n”,flag); for(j=2;j>0;j--) for(i=2;i>=j;i--) flag=a[i][j]; printf(“%d\n”,flag); } 程序2 #include main() {charstr[10]=”4Ae2E”; inti; for(i=0;str[i]! =’\0’;i++) if(str[i]>=’a’&&str[i]<=’z’) putchar(str[i]); putchar(‘\n’); for(i=0;str[i]! =’\0’;i++) if(str[i]>=’a’&&str[i]<=’z’) putchar(str[i]-‘a’+’A’); elseif(str[i]>=’A’&&str[i]<=’Z’) putchar(str[i]-‘A’+’a’); putchar(‘\n’); } 【问题】 (17) 程序1运行时,第1行输出c(17) [A]0[B]1 [C]8[D]9 (18) 程序1运行时,第2行输出c(18) [A]9[B]7 [C]5[D]1 (19) 程序2运行时,第1行输出d(19) [A]AeE[B]a[C]ae[D]e (20) 程序2运行时,第2行输出d(20) [A]4Ae2E[B]42[C]AeE[D]aEe 6.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】 #include #include main() {inti,j; charstr[10],*s[10]={“SQL”,”hello”,”bear”,”zone”}; gets(str); for(i=0;i<4;i++){ if(strcmp(str,s[i])>0)continue; j=3;. while(j>=i){ s[j+1]=s[j]; j--; } s[i]=str; break; } if(i==4)s[4]=str; for(i=0;i<5;i++) printf(“%s”,s[i]); putchar(‘\n’); } 【问题】 (21) 程序运行时,输入apple,输出a(21) [A]SQLapplehellobearzone [B]appleSQLhellobearzone [C]SQLhellobearzoneapple [D]SQLhelloapplebearzone (22) 程序运行时,输入I,输出b(22) [A]SQLhellobearIzone [B]ISQLhellobearzone [C]SQLIhellobearzone [D]SQLhellobearzoneI (23) 程序运行时,输入zoo,输出c(23) [A]zooSQLhellobearzone [B]SQLhellobearzoozone [C]SQLhellobearzonezoo [D]SQLhellozoobearzone (24) 程序运行时,输入orange,输出d(24) [A]SQLorangehellobearzone [B]SQLhelloorangebearzone [C]orangeSQLhellobearzone [D]SQLhellobearorangezone 二、程序编写(每小题14分,共28分) 1.编写程序,输入100个整数,将它们存入数组a中,查找并输出数组a中的最小值。 #include #defineN100 intmain() { inta[N],i,k,temp; for(i=0;i { scanf("%d",&a[i]); } k=a[0]; for(i=1;i { if(k>=a[i]) k=a[i]; } printf("%d",k); return0; } 2.按下面要求编写程序: (1)定义函数cal_power(x,n)计算x的n次幂(即xn),函数返回值类型是double. #include doublecal_power(intx,intn) { doubles=1; inti; for(i=1;i<=n;i++) s*=x; returns; } intmain() { intx,n; scanf("%d,%d",&x,&n); printf("%lf",cal_power(x,n)); return0; } (2)定义函数main(),输入浮点数x和正整数n,计算并输出下列算式的值。 要求调用函数cal_power(x,n)计算x的n次幂。 #include doublecal_power(intx,intn) { doubles=1; inti; for(i=1;i<=n;i++) s*=x; returns; } intmain() { intx,n,i; doublek,s=0; scanf("%d,%d",&x,&n); for(i=1;i<=n;i++) {k=cal_power(x,i); s+=1/k; } printf("%lf",s); return0; }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 模拟