一些大题.docx
- 文档编号:24598927
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:16
- 大小:17.63KB
一些大题.docx
《一些大题.docx》由会员分享,可在线阅读,更多相关《一些大题.docx(16页珍藏版)》请在冰豆网上搜索。
一些大题
三、程序填充题,对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面。
1.斐波那契数列的第1和第2个数分别为0和1,从第三个数开始,每个数等于其前两个数之和。
求斐波那契数列中的前20个数,要求每行输出5个数。
#include
voidmain(){
intf,f1,f2,i;
cout<<”斐波那契数列:
\n”;
f1=0;f2=1;
cout< for(i=3;i<=20;i++){ f=______ (1)______; cout< if(_____ (2)______)cout< f1=f2; f2=____(3)_______; } cout< } (1)f1+f2 (2)i%5==0(3)f 2.计算的值。 #include voidmain() { doublex,p1=1,p2=1,s=0; inti,j=1; cout<<"输入x的值: "; cin>>x; for(i=1;i<=10;i++){ p1*=___ (1)_____; p2*=____ (2)____; s+=j*p1/p2;//j的值为(-1)i+1 j=____(3)____; } cout< } . (1)x (2)I(3)-j 3.打印出2至99之间的所有素数(即不能被任何数整除的数)。 #include #include voidmain() { inti,n; for(n=2;___ (1)___;n++){ inttemp=int(sqrt(n));//求出n的平方根并取整 for(i=2;___ (2)___;i++) if(n%i==0)___(3)___; if(i>temp)cout< } cout<<'\n'; } (1)n<=99 (2)i<=temp(3)break 4.采用辗转相除法求出两个整数的最大公约数。 #include voidmain() { inta,b; cout<<"请输入两个正整数: "; cin>>a>>b; while(a<=0||__ (1)___){cout<<"重新输入: ";cin>>a>>b;} while(b){ intr; r=a%b; ___ (2)___;___(3)___;//分别修改a和b的值 } cout< } (1)b<=0 (2)a=b(3)b=r 5.把从键盘上输入的一个大于等于3的整数分解为质因子的乘积。 如输入24时得到的输出结果为“2223”,输入50时得到的输出结果为“255”,输入37时得到的输出结果为“37”。 #include voidmain() { intx; cout<<"请输入一个整数,若小于3则重输: "; docin>>x;while(___ (1)___); inti=2; do{ while(___ (2)___){ cout< x/=i; } ___(3)___; }while(i if(x! =1)cout< cout< } (1)x<3(或x<=2) (2)x%i==0(3)i++ 6.下面函数是求两个整型参数a和b的最小公倍数。 intf2(inta,intb) { inti=2,p=1; do{ p*=i;a/=i;b/=i; } ___ (2)___; }while(a>=i&&___(3)___); returnp*a*b; } (1)b%i==0 (2)i++(或++i)(3)b>=i 7.在输出屏幕上打印出一个由字符’*’组成的等腰三角形,该三角形的高为5行,从上到下每行的字符数依次为1,3,5,7,9。 #include voidmain() { inti,j; for(i=1;___ (1)___;i++){ for(j=1;j<=9;j++) if(j<=5-i||___ (2)___)cout<<’’; else___(3)___; cout< } } (1)i<=5 (2)j>=5+i(3)cout<<’*’ 8.统计字符串中英文字母个数的程序。 #include intcount(charstr[]); voidmain(){ chars1[80]; cout<<”Enteraline: ”; cin>>s1; cout<<”count=”< } intcount(charstr[]){ intnum=0;//给统计变量赋初值 for(inti=0;str[i];i++) if(str[i]>=’a’&&str[i]<=’z’||___ (1)___) ___ (2)___; ___(3)___; } (1)str[i]>=’A’&&str[i]<=’Z’ (2)num++(3)returnnum 9.主函数调用一个fun函数将字符串逆序。 #include #include ___ (1)___; voidmain(){ chars[80]; cin>>s; ___ (2)___; cout<<”逆序后的字符串: ”< } voidfun(charss[]){ intn=strlen(ss); for(inti=0;___(3)____;i++){ charc=ss[i]; ss[i]=ss[n–1–i]; ss[n–1–i]=c; } } (1)voidfun(charss[]) (2)fun(s)(3)i 10.从一个字符串中删除所有同一个给定字符后得到一个新字符串并输出。 #include constintlen=20; voiddelstr(chara[],charb[],charc); voidmain(){ charstr1[len],str2[len]; charch; cout<<"输入一个字符串: "; cin>>str1; cout<<"输入一个待删除的字符: "; cin>>ch; delstr(str1,str2,ch); cout< } voiddelstr(chara[],charb[],charc) { intj=0; for(inti=0;___ (1)___;i++) if(___ (2)___)b[j++]=a[i]; b[j]=___ (2)___; } (1)a[i](或a[i]! =’\0’) (2)a[i]! =c3)'\0' 四、写出程序运行结果 1.#include #include voidmain() { inta[8]={25,48,32,85,64,18,48,29}; intmax,min; max=min=a[0]; for(inti=0;i<8;i++){ if(max>a[i])max=a[i]; if(min } cout<<"max: "< cout<<"min: "< } 答案: 1.max: 85 min: 18 2.#include voidmain() { inta,b; for(a=1,b=2;b<50;){ cout< a=a+b; b=a+b; }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一些