if(m==s)
cout< return 0; } 第31题:一个数恰好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、 3,并且6=1+2+3,因此6是“完数”。编写程序判断一个数是否为“完数”,如果是则输出YES,否则输出NO。 样例输入:1 样例输出:NO 样例输入:6 样例输出:YES #include 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 for(i=1;i<=n;i++) if(n%i==0)gs++; if(gs==2) cout<<\ else cout<<\ return 0; } 方法二:优点:循环次数少 缺点:输入1会得到错误结果,所以要注意对1的处理 #include 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 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 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 {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 {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 c=(a/10); d=(a/100); cout< 第38题:输入一个正整数n,如果n为偶数则输出Even,否则n为奇数则输出Odd。 样例输入:1 样例输出:Odd #include cout<<\ else cout<<\ return 0;} 第39题:输入一个字符,如果是大写字母则转换为对应的小写字母,如果是小写字母则 转换为对应的大写字母,如果是数字字符则转换为对应的数值,如果都不是则不转换,将转换后的结果输出。 样例输入:A 样例输出:a 样例输入:8 样例输出:8 #include cout<<\ else cout<<\ return 0; } 第40题:输入一个字符,如果是大写字母则转换为对应的小写字母,如果是小写字母则 转换为对应的大写字母,如果是数字字符则转换为对应的数值,如果都不是则不转换,将转换后的结果输出。 样例输入:A 样例输出:a 样例输入:8 样例输出:8 #include 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 {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