当前位置:
文档之家› C++循环结构23道题(含答案)
C++循环结构23道题(含答案)
int m,n,i; cin>>m>>n; for(i=m;i>=1;i--)
{ if(m%i==0&&n%i==0)
break; }
cout<<i<<endl; return 0; }
循环 15:斐波那契数列 判 断 第 n 个 斐 波 那 契 数 列 能 否 被 3 整 除 给 定 斐 波 那 契 数 列 为 : F(0)=1, F(1)=1,
3%; 4%;
输出:每个收入对应的纳税额 输入 4 900 2000 4000 6000 输出 0 60 160 360 #include<iostream> using namespace std; int main() {
double m,tax;;int i,n; cin>>n; for(i=1;i<=n;i++) {
循环 04:西瓜卖几天
n 个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?
说明:当西瓜个数为奇数时,卖一半为一半的整数,如当西瓜个数为
5 时,卖一半为卖 2
个。
输入:西瓜个数,输出:天数
输入 10 输出 2
输入 50 输出 4
测试
输入 120 输出 5
#include<iostream>
#include<iostream> using namespace std; int main() {
int n,i=1; double s=0; cin>>n; while(i<=n) {
s+=1.0/i; i++;}
cout<<s<<endl; return 0; }
循环 07:水仙花数 打印出所有的 "水仙花数 " ,所谓 " 水仙花数 " 是指一个三位数,其各位数字立方和等于该 数本身。例如: 153 是一个 " 水仙花数 ",因为 153=1 的三次方+ 5 的三次方+ 3 的三次方。 输入 无 输出 153 370 371 407 #include<iostream> using namespace std; int main () {
int n,i,d; cin>>n; for(i=2;i<n;i++) {d=n%i;
if(n%i==0) break;
}
1,否则输出 0。(提示:素数是指只可
if(n==i) cout<<"1"<<endl;
else cout<<"0"<<endl;
retቤተ መጻሕፍቲ ባይዱrn 0; }
循环 03:数列求和 输入一个正整数 n,计算前 n 项之和: 1+1/4+1/7+1/10..+1/(3*n-2) 。
int n,s=0; cin>>n; while(n>0) {if(n%2!=0) s=s+n; cin>>n; } cout<<s<<endl; return 0; }
循环 10:求和 从键盘输入若干正数,对其求和并输出,遇到负数则终止输入。
输入 32 33 50 34 65 67 -1 输出 281 输入 13 15 17 30 35 -2 输出 110 测试 输入 31 33 50 34 65 67 -5 输出 280
#include<iostream> using namespace std; int main() {
int n,a=0; cin>>n; while(n>=0)
{a=n+a; cin>>n;} cout<<a<<endl; return 0; } 循环 11:特殊数值 已知四位数 3025 有一个特殊性质 : 它的前两位数字 30 和后两位数字 25 的和是 55, 而 55 的平方刚好等于该数 (55*55=3025). 试编一程序打印所有具有这种性质的四位数 . 输入无 输出 2025 3025 9801 #include<iostream> using namespace std; int main() { int i,a,b;
cin>>m; if(m<=1000) tax=0; else if(m<=3000)
tax=m*0.03; else if(m<=5000)
tax=m*0.04; else
tax=m*0.06; cout<<tax<<" "; } return 0; }
循环 13:因数个数 给定一个正整数 n,求它的因数个数。如 输入 12 输出 6 测试 输入 30 输出 8 #include<iostream> using namespace std; int main() {
int i,max=0; cin>>i;
while(i!=0) {
if(i>max) max=i; cin>>i;
} cout<<max<<endl; return 0; }
0 时结束循环,并且输出最大的正数。
循环 02:素数 输入正数 n ,判断 n 是否为素数。若为素数则输出 以被 1 和其本身整除的正数( 1 除外)) 输入 10 输出 0 输入 7 输出 1 测试: 输入 9 输出 0 #include<iostream> using namespace std; int main() {
输入 5 输出 1.56978 输入 4 输出 1.49286
#include<iostream> using namespace std; int main() {
int i,n; double s=0; cin>>n; for(i=1;i<=n;i++)
s+=1.0/(3*i-2); cout<<s<<endl; return 0; }
例如: 1234 ,结果为 6=2+4。
{ int n,x,s=0; cin>>n; while(n) { x=n%10; if(x%2==0) s+=x; n=n/10; } cout<<s<<endl;
return 0; }
循环 18:数根 对于一个正整数 n,我们将它的各个位相加得到一个新的数字,如果这个数字是一位数,我 们称之为 n 的数根, 否则重复处理直到它成为一个一位数, 这个一位数也算是 n 的数根。 例 如:考虑 24, 2+4=6, 6 就是 24 的数根。考虑 39,3+9=12, 1+2=3, 3 就是 39 的数根。请 编写程序,计算 n 的数根。 输入 189 输出 9 测试 输入 8943 输出 6 #include<iostream> using namespace std; int main() {
for(i=1000;i<=9999;i++) {
a=i/100; b=i%100; if((a+b)*(a+b)==i)
cout<<i<<" "; } return 0; }
循环 12:征税 税务部门征收所的税,规定如下: 1)收入在 1000 元以内(含 1000 ),免征; 2)收入在 1000~3000 元以内(含 3000 ),纳税额为收入的 3)收入超过 3000~5000 元以内(含 5000 ),纳税为收入的 4)当收入超过 5000 元时,纳税为收入的 6%。 请根据以上关系,输入收入 m,输出应缴纳的税收 tax。 输入:第一个整数 n 表示后续有 n 个收入
题目、描述、输入、输出、输入样例、输出样例、测试输入、测试输出
循环 01:最大数 写一个程序,可以输入一批正数,输入 输入 39 28 5 63 18 27 0 输出 63 测试: 输入 153 26 963 28 75 90 156 0 输出 963 #include<iostream> using namespace std; int main() {
int n,i,count=0; cin>>n; for(i=1;i<=n;i++) {
if(n%i==0) count++;
} cout<<count<<endl; return 0;
6 的因数为 1、 2、 3、 6,则因数个数为 4。
}
循环 14:最大公约数 键盘输入两个正整数 m , n,求出他们的最大公约数。 输入 20 15 输出 5 测试 输入 32 80 输出 16 #include<iostream> using namespace std; int main() {
int n,i,j,k; for(n=100;n<1000;n++) {
i=n/100; j=n/10%10; k=n%10; if(i*i*i+j*j*j+k*k*k==n)
cout<<n<<" "; } return 0; }
循环 08:数位之和 输入一个正整数,输出其各个位置上的数字之和。
输入 1234 输出 10 输入 12534 输出 15 测试 输入 4325 输出 14 #include<iostream> using namespace std; int main() {