《C++复习程序题》由会员分享,可在线阅读,更多相关《C++复习程序题(13页珍藏版)》请在金锄头文库上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除题目:1、输入3个数a,b,c,输出其中的最大数。2、 x x1 y= 2x-1 1=x=103、(1) 给出一个百分制成绩,要求输出等级。成绩分为5个等级,分别为A(90-100),B(80-89),C(70-79),D(60-69),E(0-59)(2) 输入一个正整数n,再输入n个学生的成绩,计算平均分,并统计各等级成绩的个数。成绩分为5个等级,分别为A(90-100),B(80-89),C(70-79),D(60-69),E(0-59)(3)输入一些学生的成绩,统计其中最高分和平均值,输入遇负数结束。(例题)4、 求出10至1000之内能
2、同时被2、3、7整除的数,并输出。5、(1) 1+2+100 (2) 1+3+5+99 (3) 2+4+6+100 (4) , n从键盘输入 (5) 6、分数序列之和 。 (1)求出分数序列2/1,3/2,5/3,8/5,13/8,的前二十项之和。(2)求出分数序列2/4,4/7,6/10,8/13, 10/16,12/19,,的前二十项之和。7、(1)求n! (2)1!+2!+n!,n从键盘输入8、求s=a+aa+aa, 共n个,其中n和a从键盘输入。9、(1) 输入一个字符,如果是大写字母,将其转换为小写(小写字母转换为大写同理,自己写) (2)、输入一行字符,分别统计其中英文字母,数字,
3、空格,其他字符的个数。10、(1)求水仙花数 (2) 给出一个不多于5位的正整数,求出它是几位数及各位上的数字11、打印出下列图形(用循环完成)11 21 2 31 2 3 412、将一个一维数组逆序输出 13、求Fibonacci数列。 14、 冒泡排序法。 解法:1、输入3个数a,b,c,输出其中的最大数。#include using namespace std;int main ( ) int a,b,c,max; cinabc; if (ab) max=a; else max=b; if (cmax) max=c; else max=max; coutmax; return 0;2、
4、x x1 y= 2x-1 1=x=10#include using namespace std;int main ( ) int x,y; cinx; if (x1) y=x; else if (x10) y=2*x-1; else y=3*x-11; coutx=x, y=y; return 0;3、(1) 给出一个百分制成绩,要求输出等级。成绩分为5个等级,分别为A(90-100),B(80-89),C(70-79),D(60-69),E(0-59) #include using namespace std;int main ( )int score; char grade; cinsco
5、re; if(score=90) grade=A; else if(score=80) grade=B; else if (score=70) grade=C; else if (score=60) grade=D; else grade=E; coutgrade; return 0;(2) 输入一个正整数n,再输入n个学生的成绩,计算平均分,并统计各等级成绩的个数。成绩分为5个等级,分别为A(90-100),B(80-89),C(70-79),D(60-69),E(0-59)#include using namespace std;int main ( )int n,i,score,sum=
6、0,ave,a=0,b=0,c=0,d=0,e=0; cinn; for(i=1;iscore; if(score=90) a+; else if(score=80) b+; else if (score=70) c+; else if (score=60) d+; else e+; sum=sum+score; ave=sum/n; coutaveabcde; return 0;(3) 输入一些学生的成绩,统计其中最高分和平均值,输入遇负数结束。#include using namespace std;int main ( )int score,max=0,sum=0,ave,i=0; ci
7、nscore; while(score=0) i+; sum=sum+score; if(scoremax) max=score; cinscore; ave=sum/i; coutave”,”max; return 0;4、 求出10至1000之内能同时被2、3、7整除的数,并输出。#include using namespace std;int main ( )int n; for(n=10;n=1000;n+) if(n%2=0&n%3=0&n%7=0) coutn; return 0;5、(1) 1+2+100 书上例题,自己写#include using namespace std;
8、int main ( )int i,sum=0; for(i=1;i=100;i+) sum=sum+i; coutsum; return 0; (2) 1+3+5+99 同上,自己写#include using namespace std;int main ( )int i,sum=0; for(i=1;i=100;i=i+2) sum=sum+i; coutsum; return 0; (3) 2+4+6+100 同上,自己写#include using namespace std;int main ( )int i,sum=0; for(i=2;i=100;i=i+2) sum=sum+
9、i; coutsum; return 0; (4) , n从键盘输入#include#include using namespace std;int main ( )float i,sum=0,n;cinn; for(i=1;i=n;i+) sum=sum+sqrt(i); coutsum; return 0; (5) #include#include using namespace std;int main ( )float i,sum1=0,sum=0,n;cinn; for(i=1;i=n;i+)sum1=sum1+sqrt(i); sum=sum+sum1; coutsum; retu
10、rn 0; 6、分数序列之和 。 (1)求出分数序列2/1,3/2,5/3,8/5,13/8,的前二十项之和。#include using namespace std;int main() int i,t,n=20; double a=2,b=1,s=0; for (i=1;i=n;i+) s=s+a/b; t=a; a=a+b; b=t; coutsum=sendl; return 0;(2)求出分数序列2/4,4/7,6/10,8/13, 10/16,12/19,,的前二十项之和。 #include using namespace std;int main() int i; double
11、a,b,s=0; for (i=1;i=20;i+) a =2*i ; b=3*i+1; s=s+a/b; coutsum=sendl; return 0;7、(1)求n! #include using namespace std;int main ( )int n,i;float t=1;cinn; for (i=1;i=n;i+) t=t*i; cout t endl; return 0; (2)1!+2!+n!#include using namespace std;int main ()float s=0,t=1; int n; for (n=1;n=20;n+) t=t*n; s=s+t; cout1!+2!+.+20!=sendl; return 0;8、求s=a+aa+aa, 共n个,其中n和a从键盘输入。#include using namespace std;int main ( )int n,a,i,sum=0,t=0;cinna; for (i=1;i=n;i+) t=t+a;sum=sum+t; a=a*10; coutsum endl; return 0;9、(1) 输入一个字符,如果是大写字母,将其转换为小写(小写字母转换为大写同理,自己写) #include using namespac