




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、程序题(类型:程序填空题、改错题和设计题)第一组1、下面程序是求1,450之间同时满足除3余2和除5余3条件的数的个数。请将程序补充完整,并给出正确结果,填入相应窗口。 程序: 结果是:30#include #include #include main() int count; int i; _ for (i=1;i=450;i+) if (fmod(i, 3)= =2 & fmod(i, 5)= =3) _ clrscr(); printf(“%d”,count);3、下面程序是求50,300之间的所有偶数的平方和。请修改程序中的错误,使它能得出正确的结果,并给出正确结果,填入相应窗口。 程序: 结果是:4525500#include #include #include main() long sum; int i; sum=0; for (i=50;i=300;i+) if (fmod(i,2)!=0) sum+=i*i; 第二组1、程序是求 s=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+.+(1*2*3*.*n)/(3*5*7*.(2*n+1) 请修改程序中的错误,并运行修改后的程序。当n=30时,程序的运行结果(按四舍五入保留10位小数)。 程序:结果:1.5707963267#include #include #include double fun(int n) double s, t; int i; s=1.0; t=1.0; for(i=1;i=n; i+) t=t*n/(2*n+1); s=t; return s; main() printf(n %12.10lf, fun(30); 2、下面的程序是计算如下公式的A30值。 A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), . 请改正程序中的错误, 并给出程序运行的正确结果(按四舍五入保留10位小数)。 程序: 结果为:0.6180339887#include #include double fun(int n) int A=1;int i; for(i=2; i=n; i+) A=1/(1+A); return ; main() clrscr(); printf(%12.10lfn, fun(30); 3、下面的程序是求表达式的值:s=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+.+(1*2*3*.*n)/(3*5*7*.(2*n+1) 请将程序补充完整,并给出当n=25时,程序的运行结果(按四舍五入保留10位小数) 程序:结果:1.5707963218#include #include #include double fun(int n) double s, t; int i; _ t=1.0; for(i=1;i=n; i+) t=t*i/(2*i+1); _ return s; main() printf(n %12.10lf, fun(25); 4、下面的程序中,函数fun的功能是:根据形参m,计算下面公式的值。 T=1+1/(2*3)+1/(3*4)+.+1/(m*(m+1) 请改正程序中的错误,并运行改正后的程序。当从键盘输入50时,给出程序运行的正确结果(按四舍五入保留6位小数)。 程序:#include #include double fun(int m) double t=1.0; int i=2; for(i=2;i2 以下程序是求F(35),请将程序补充完整,并给出正确结果,填入相应窗口。 程序:结果:9227465#include #include main() double f1,f2; int i; _ f2=1; for (i=1;i2) 求f(0)到f(50)中的最大值 。 结果是:598325第四组1、所谓“水仙花数”是指一个三位数,其各位数字的三次方之和等于该数本身,例如:153=13+33+53,故153是水仙花数,求100,999之间所有水仙花数之和。结果:13012、若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如: 由于7396=862,且7+3+9+6=25=52,则称7396是“四位双平方数”。若把所有“四位双平方数”按升序排列,求前5个“四位双平方数”的和。结果:101323、设有十进制数字a,b,c,d和e,它们满足下列式子:abcd*e=bcde (a不等于0, e不等于0或1),求满足上述条件的所有四位数abcd的和。结果:36654、所谓“同构数”是指这样一个数,它出现在它的平方数的右侧,例如5的平方是25,25的平方是625,故5和25都是同构数,求2,1000之间有多少个同构数。结果:65、某些分数的分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子的两位数字相加作分子,而将该分数的分母的两位数字相加作分母,得到的新分子跟原分子相等。例如,63/84=(6+3)/(8+4)。试求所有具有这种特点的真分子(非约简真分数)的分子与分母之和的和。结果:101346、若某正整数平方等于某两个正整数平方之和,称该正整数为弦数。例如:由于32+42=52,则5为弦数,求131,200之间最小的弦数 结果:1357、一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如,6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求1,1000之间的第二大完数。结果是:288、以下程序求10000以内的所有完全数之和,请将程序补充完整,并给出正确结果,填入相应窗口。“完全数”是指:一个数如果刚好与它所有的真因子(不包括该数本身)之和相等,如:6=1+2+3,则6就是一个完全数。 程序:结果是:8658#include #include #include main() int sum,n,m,s,k; sum=0; for (n=3;n=10000;n+) _ k=n/2+1; for (m=1;mk;m+) if (n%m=0) s=s9、已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好能被其因子数8整除,求正整数10,100之间有多少个正整数能被其因子的个数整除。结果是:1210、已知24有8个因子(即:1,2,3,4,6,8,12,24),而24正好被8整除。求10,200之间有多少个整数能被其因子的个数整除,将下列程序补充完整,正确结果填入相应窗口。 程序:结果是:21#include #include #include main() int a,b,c,n,count=0; for (a=10; a=200; a+) _ for (c=1;c=a;c+) if (a%c =0) _ if (a%b=0) count+; 11、求200,300之间第二大有奇数个不同因子的整数(在计算因子个数时,包括该数本身)。结果是:25612、若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于32+42=52,则5为弦数,求100,200之间弦数的个数。 结果是:5513、 A,B,C是三个小于或等于100正整数,当满足1/A2+1/B2=1/C2关系时,称为倒勾股数。求130A+B+CBC的倒勾股数有多少组。结果是:1第五组1、素数下面的程序是求20,700之间所有的素数的个数。请修改程序中的错误,使它能得出正确的结果,并给出正确结果,填入相应窗口。结果:117 程序:#include #include #include int prime(int n) int yes, i; if(n=1) return 0; yes=0; ;for(i=2; i=sqrt(n); i+) if(n%i=0) yes=0; break; return yes; main( ) int count=0, i; clrscr(); for(i=20;i=700; i+)count=count+prime(i) /增加的printf(“count=%d”,count); /增加的2、下面的程序是求1000以内的最大的20个素数之和。请修改程序中的错误,使它能得出正确的结果,并给出正确结果。 程序:结果:18580#include #include #include int fun(int high) int sum=0, n=0, j, yes; while(high=2) |(n10) yes=1 ; for(j=2; j=sqrt(high); j+) if(high%j=0) yes=0; break; if(yes) sum+=high;n+; high-;3、若两个素数之差为2,则称这两个素数为双胞胎数。求出200,1000之内有多少对双胞胎数。 结果是:204、梅森尼数是指能使2n-1为素数的数n,求2,21范围内最大的梅素尼数?结果是:19第六组1、爱因斯坦走台阶:有一台阶,如果每次走两阶,最后剩一阶;如果每次走三阶,最后剩两阶;如果每次走四阶,最后剩三阶;如果每次走五阶,最后剩四阶;如果每次走六阶,最后剩五阶;如果每次走七阶,刚好走完.求满足上述条件的最小台阶数是多少? 结果是:1192、穷举法把一张一元钞票,换成一分、二分和五分硬币,每种至少5枚,问有多少种方案? 结果是:2053、下面的程序是求如下表达式的值。 S=sqrt(ln(1)+ln(2)+ln(3)+ln(n) 请改正程序中的错误,并运行修改后的程序, 当n=50时,给出程序运行结果(按四舍五入保留6位小数)。 程序:结果是:12.18515#include #include #include int fun(int n) int s=0; int i; for(i=1;i=n;i+) s+=log(1.0*i); s=sqrt(s); return s; main()clrscr(); printf(%lfn,fun(50); 4、某一正整数,进行递减,每次将该数减半后再减一,当对该数进行第10次减半时发现该数只剩下1不能再减了,求该数。 结果是:15345、已知AB, A和B均为正整数,且A*B=2698,求A+B的最小值。 结果是:109第七组:综合题一1、下面的程序是求500以内的所有的素数的个数。请修改程序中的错误,使它能得出正确的结果,并给出正确结果,填入相应窗口。 程序:结果是:95#include #include #include int prime(int n) int yes, i; if(n=1) return 1; yes=1; for(i=2; i=sqrt(n); i+) if(n%i=0) yes=0; break; return yes; main() int count=0, i; clrscr(); for(i=2;i=500; i+)2、下面的程序是求如下表达式的值。 S=sqrt(ln(1)+ln(2)+ln(3)+ln(n) 将程序补充完整, 当n=40时,给出程序运行结果(按四舍五入保留6位小数)。 程序: 结果是:10.503363#include #include #include double fun(int n) double s=0.0; int i; for(i=1;i=n;i+) s+=log(1.0*i); _ return s; main() clrscr(); printf(_); 3、若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于32+42=52,则5为弦数,求100,200之间弦数的个数。结果是:55第八组:综合题二1、列程序的功能是求出以下分数序列的前25项之和, 2/1,3/2,5/3,8/5,13/8,21/13,. 请改正程序中的错误,并运行修改后程序,给出程序结果(按四舍五入保留6位小数)。程序:结果是:40.750431#include #include fun(n) long a,b,c; int k; double s; s=0.0; a=2; b=1; for(k=1; k=n; k+) s=s+(double)a/b; c=a; a=a+b; b=c; return s; main() int n=25; clrscr(); printf(n result: %lfn,fun(n); 2、下面程序是求1,100之间的所有整数的立方和。请将程序补充完整,并给出正确结果,填入相应窗口。 程序:结果是:25502500#include #include #include main() long sum; _ sum=0; for (i=1;i=100;i+) _ clrscr(); printf(%ldn,sum); 3、有十进制数字a,b,c,d和e,它们满足下列式子:abcd*e=bcde (a不等于0, e不等于0或1),求满足上述条件的所有四位数bcde的和。结果是:16659二、选择题1. 在TC中,若k是int型变量,且有下面的程序片段: int k = -2; if (k=0) printf(#); else printf(&); 上面程序片段的输出结果是( )。A 有语法错误,无输出结果B &C #&D #2. C语言程序是由( )组成的。A 函数B过程C主程序和子程序D 子程序3. 下列语句中符合C语言语法的赋值语句是( )。A a=0x7bc=a7 ;B a=0x7b=a7;C a=0x7b,c=a7;D a=0x7b, b,a7;4. 在TC中,已知: unsigned int x=65535;则执行以下语句后的x值为 ( ) 。printf(“%dn”,x);A 65535B 1C 无定值D -15. 在C语言中,下列不正确的转义字符是( )。A B tC 074D 06. 在C语言中,要求运算数必须是整型的运算符是( ) 。A /B %C D |7. 在C语言中,以下一组运算符中,优先级最高的运算符是( )。A b)&(n=cd)后,n的值为( )。A 1B 3C 2D 015. 在C语言中,当do-while语句中的条件为( )时,结束该循环。A TUREB 1C 0D 非016. 在C语言中,有表达式 x=abs(8-10), 则x的值为( )。A -2B 2C 18D 8017. 在C语言中,有:char str=abcd; printf(%dn,strlen(str); 上面程序片段的输出结果是( )。A 3B 4C 6D 1218. 在TC中,下列语句的输出结果是( )。 printf(%dn, strlen(ATSn0121);A 9B 10C 11D 819. 在TC中,表达式: 10!=9 的值是( )。A TUREB 1C 0D 非零值20. 在TC中,假定有以下变量定义: int k=7 ,x=12; 则能使其值为 3 的表达式是( )。A x%=(K%=5)B x%=(k-k%5)C x%=k-k%5D (x%=k)-(k%=5)21. 在TC中,若u=1,v=2,w=3,则表达式w=(v=-u)执行完后w 的值是()。A 3B 2C 1D 022. 在TC中,若w=1, x=2 , y=3, z=4; 则条件表达式: wx ? w : y0C a0D a=029. 在TC中,表示关系 X=Y=Z 的表达式为( )。A (X=Y)AND(Y=Z)B (X=Y)&(Y=Z)C (X=Y=Z)D (X=Y)&(Y=Z)30. 在TC中,表示关系 xyz 所对应的表达式是( )。A x y = y) | !(y = z)C (x y) | (y z)D (x y) & (y z)31. 在TC中,下列符号中可以作为函数名的是( )。A x-aB $abcC 5asD _sysf32. C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是( )。A 值传递B 地址 C 由实参传给形参,并由形参传回给实参D 由用户指定传递方式33. 在TC中, 若有定义和语句: char s10;s=abcd;printf(%sn,s); 则结果是( )(以下u代表空格)。A 编译不通过B 输出aC 输出abcduuuuuD 输出abcd34. 在C语言中,定义 char a=a,b,l,l,o,已知字符b的ASCII码为98,则 printf(%dn,a0); 的值为( )。A 98B aC 97D b35. 在TC中,若定义 int a46,则数组 a 有()个元素。A 10B 35C 24D 3036. 在TC中,若有以下定义:char a; int b; float c; double d; 则表达式a*b+d-c值的类型为( )。A float B int C char D double37. 在C语言中,若a=0x21,则printf(%d,a);输出值为( )。A 20 B 33 C 32 D 2138. 在C语言中,执行语句:for(i=1;i4;i+);后,变量i的值是( )。A 3 B 4 C 5 D 不定39. 在C语言中,执行语句:for(j=1;j=4;+j);后,变量j的值是( )。A 5 B 4 C 3 D 不定40. 在TC中,执行语句: for (i=1;i+4;);后,变量i的值是( )。A 3B 4C 不定D 541. 在TC中,与语句 while(!x) 等价的语句是( )。A while (x=0)B while (x!=0)C while (x!=1)D while (x)42. 在TC中, while(x)中的x与下面条件表达式等价的是( )。A X=0B X=1C X!=1D X!=043. 在TC中,执行下面程序片段的结果是( )。 int x=13; do printf(%2d,-x); while(!x);A 打印出212B 打印出12C 不打印任何内容D 陷入死循环44. 在TC中,若i,j已定义为int类型,且内循环体不改变i,j的值,则以下程序段中内循环体的总的执行次数是( )。 for(i=5;i;i-) for(j=0;j4;j+) A 20 B 25 C 24D 3045. 在TC中,若x=0,y=1,则语句while(x=y)x+; break; 循环体执行次数 是( )。A 0B 2C 1D 346. 在TC中,设k为整型变量,则下面while循环共执行( )次。 k=2; while(k!=0) printf(%d,k), k-; printf(n);A 无限多B 2C 1D 047. 在TC中,设已定义k为int整型变量,则有下面while循环执行( )次。 k=10; while(k=0) k=k-1;A 一次也不执行B 无限循环C 执行10次D 执行1次48. 在C语言中,若i=3,则语句 while (i) i-; break;的循环次数为( )。A 0B 3C 2D 149. 在TC中,若已知int a,x; 以下( )是正确的赋值语句。A a=-a=(x=1,x+,x+2)B a*=*a+1C a=(a2+a2/2)D a=good50. 在TC中,不能把字符串 Hello! 赋给数组b的语句是( )。A char b10;b=Hello!; B char b10=H,e,l,l,o,!; C char b10;strcpy(b,Hello!);D char b10=Hello!;51. 在TC中,假定所有变量均已正确说明,下列程序段运行后x的值是 ( )。 a=b=c=0;x=35; if(!a) x=3; else x=4;A 34B 4C 35D 352. 在C语言中,执行下面语句后,输出的结果是( )。 int x=10,y=3; printf(%dn,y=x/y);A 0 B 3C 1D 不确定的值53. 在TC中,定义 int *swap() 指的是( )。A 指一个返回整型值的函数swapB 说法均错C 指一个指向函数swap()的指针,函数返回一个整型值D 指一个返回指向整型值指针的函数swap54. 在TC中,设有如下定义: int (*ptr)(); 则以下叙述中正确的是( )。A ptr是指向一维组数的指针变量B ptr是指向函数的指针,该函数返回一个int型数据C ptr是指向int型数据的指针变量D ptr是一个函数名,该函数的返回值是指向int型数据的指55. 在TC中,若 int x=2, y=2, z=2 ; 则表达式 z+=+x+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安达市2025-2026学年七年级下学期语文月考测试试卷
- 2025 年小升初温州市初一新生分班考试语文试卷(带答案解析)-(部编版)
- Python大模型基础与智能应用(微课版)课件第9章 云服务器微调训练大模型应用案例
- 2025年小学美术教师的教学总结3篇
- 2025数学个人教学任务总结范文
- 陕西省咸阳市三原县2024-2025学年八年级(下)期末物理试卷(含答案)
- 第十三章 三角形 单元试卷(含答案) 2025-2026学年人教版数学八年级上册
- 买卖介绍居间合同范本
- 购买养殖围网合同范本
- 房房出租合同范本
- 2025年茶叶加工工职业技能竞赛考试题库(500题)带答案
- 学堂在线 日语与日本文化 章节测试答案
- 完善贷款核销管理办法
- 2025晋中辅警考试真题
- 呼吸衰竭个案查房
- 2025年云南省中考历史试卷真题(含答案解析)
- 教育事业“十五五”发展规划实施方案
- 2025年初级文秘职业技能鉴定理论考试题库(共500题)
- 内墙腻子劳务分包协议
- T/CI 312-2024风力发电机组塔架主体用高强钢焊接性评价方法
- 不锈钢焊工技能培训课件
评论
0/150
提交评论