好文档 - 专业文书写作范文服务资料分享网站

C++试题练习题库大全.doc

天下 分享 时间: 加入收藏 我要投稿 点赞

if(m==s)

cout<

return 0; }

第31题:一个数恰好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、

3,并且6=1+2+3,因此6是“完数”。编写程序判断一个数是否为“完数”,如果是则输出YES,否则输出NO。 样例输入:1 样例输出:NO 样例输入:6 样例输出:YES

#include int main() {int n,i,s=0; cin>>n;

for(i=1;i<=n/2;i++) if(n%i==0)s+=i; if(n==s)

cout<<\ else

cout<<\ return 0; }

第32题:任何一个大于1的数如果只能被1和这个数自身整除,这个数就称为“素数”

或“质数”。例如,2、3、5是“素数”。编写程序判断一个数是否为“素数”,如果是则输出YES,否则输出NO。 样例输入:1 样例输出:NO 样例输入:2 样例输出:YES

方法一:优点:输入任何数都能得到正确结果

缺点:循环次数多,

#include int main() {int n,i,gs; cin>>n; gs=0;

for(i=1;i<=n;i++) if(n%i==0)gs++; if(gs==2)

cout<<\ else

cout<<\ return 0; }

方法二:优点:循环次数少

缺点:输入1会得到错误结果,所以要注意对1的处理

#include #include int main() {int n,i,k; cin>>n;

k=(int)sqrt(n); for(i=2;i<=k;i++) if(n%i==0)break; if(i==k+1&&n!=1) cout<<\ else

cout<<\ return 0; }

第33题:任何一个大于1的数如果只能被1和这个数自身整除,这个数就称为“素数”

或“质数”。例如,2、3、5是“素数”。输入m和n(m<=n),编写程序计算[m,n]范围内“素数”之和。 样例输入:1 10 样例输出:17

#include int main()

{int m,n,s=0,i,j,gs; cin>>m>>n;

for(i=m;i<=n;i++) {

gs=0;

for(j=1;j<=i;j++) if(i%j==0)gs++; if(gs==2)s+=i; }

cout<

第34题:有一分数序列,

计算该序列的前n项和,n由键盘输入。

样例输入:20

样例输出:32.6603

#include int main() {int i,n,m;

float a=2,b=1,s=0; cin>>n;

for(i=1;i<=n;i++) {

s=s+a/b;m=a;a=a+b;b=m; }

cout<

第35题:一球从100米高度自由落下,每一次落地后反弹回原高度的一半,再落下,求

它在第n次落地时,共经过多少米?第n次反弹多高?n由键盘输入。 样例输入:10

样例输出:299.609 0.0976563

#include #include int main()

{float n,a,b=100,h; cin>>n;h=b/2;

for(a=1;a<=n-1;a++) {

b=b+2*h; h/=2; }

cout<

第36题:输入一个学生数学、英语、计算机课程的成绩,输出该学生3门课程的平均分。

样例输入:70 60 90 样例输出:73.3333

#include int main()

{float a,b,c,s; cin>>a>>b>>c; s=(a+b+c)/3; cout<

第37题:输入一个正整数n(100<=n<=999),依次输出n的百位数字、十位数字、个位数

字(以空格分隔)。 样例输入:153

样例输出:1 5 3

#include int main() {int a,b,c,d; cin>>a; b=a;

c=(a/10); d=(a/100);

cout<

第38题:输入一个正整数n,如果n为偶数则输出Even,否则n为奇数则输出Odd。

样例输入:1 样例输出:Odd

#include int main() {int a; cin>>a; if(a%2==0)

cout<<\ else

cout<<\ return 0;}

第39题:输入一个字符,如果是大写字母则转换为对应的小写字母,如果是小写字母则

转换为对应的大写字母,如果是数字字符则转换为对应的数值,如果都不是则不转换,将转换后的结果输出。 样例输入:A 样例输出:a 样例输入:8 样例输出:8

#include int main() {int a; cin>>a; if(a%3==0)

cout<<\ else

cout<<\ return 0; }

第40题:输入一个字符,如果是大写字母则转换为对应的小写字母,如果是小写字母则

转换为对应的大写字母,如果是数字字符则转换为对应的数值,如果都不是则不转换,将转换后的结果输出。

样例输入:A 样例输出:a 样例输入:8 样例输出:8

#include int main() {char a;int b; cin>>a;

if(a>='0'&&a<='9') {

b=a-'0'; //字符变成相应的数字 cout<

if(a>='A'&&a<='Z') a+=32;

else if(a>='a'&&a<='z') a-=32; cout<

return 0; }

第41题:求数列

计算该序列的前n项和,n由键盘输入。 样例输入:2 样例输出:0.5

#include int main()

{float sum=0,n,i,p=-1; cin>>n;

for(i=1;i<=n;i++) {

p*=-1;

sum=sum+p/i; }

cout<

第42题:输入一行字符,以字符0作为结束标志,输出这行字符对应的ASCII码值之和。

样例输入:ABCDE0

7qd8q8wq223bj0w6iip07zlrl1bk8m012z0
领取福利

微信扫码领取福利

微信扫码分享