1、2. 从键盘上输入一个正整数n,判断是否是素数?法1: #includevoid f(int n) int k = sqrt(n),i; for ( i = 2; i = k+1)cout n 是素数 else cout 不是素数 f(n);法2;#includebool f(int n) int k = sqrt(n), i; for (i = 2;= k + 1)return 1; else return 0; if(f(n)cout 3.26.2017bool f2(int n)int k=sqrt(n),i; for( i=2;i=k+1)return 1;1int main()int
2、 n;while(1)cinn;if(n=0)break;if(f2(n)cout 是素数!endl;system(return 03.编写程序,输入一个整数,求该整数的各位数字和。 int t = 0; i=i/10) t=i%10+t;n的各位数字和为: f(n) 法二: int f(int n) if (n 10)return n; else return (n % 10 + f(n / 10); int f3(int n)n=abs(n);if(n10)return n;else return (n%10)+f3(n/10);cout f3(n);return 0;3. 编写程序,输入
3、一个整数,求该整数的各位数字的乘积。法一: else return (n % 10 )* f(n / 10); n = abs(n);法二: i = i / 10) t = t*(i % 10);int f4(int n)else return (n%10)*f3(n/10);f4(n);4. 编写程序,输入一个整数,求该整数的各位数字的平方和。 t = t+(i % 10)*(i%10);法二: 10)return n*n; else return (n % 10)*(n % 10)+f(n / 10);3.27.2017 int f4(int n) if(n10)return (n%10)
4、*(n%10)+f4(n/10);f4(n)5. 编写程序,输入一个整数,求该整数的各位上的数字是否包含数字5,若有则输出是第几位有含数字5.void f(int n) int j = 0; j+; if (i % 10 = 5)cout j 0;i=i/10,j+)if(i%10=m)cout 第j+1m;f5(n,m);6. 编写程序输出一个平行四边行。注:边长为10个*号 void u() int i = 0; for (int i = 1;= 10; cout setw( i); for (int j = 1; j+) cout * 3.27.2017 void f6()for(int
5、 j=0;j10;j+)coutsetw(20+j); for(int i=0;cout 0) if (n = 1)return 1; else return n / (2 * n - 1) + f(n - 1);3.27.2017double f7(double n)int i;0) if(n=1)return 1; else return (n/(2*n-1)+f7(n-1);double n,m;cinf7(n);9.编写一程序,输入一个正整数,统计该数中含数字5的个数。 using namespace std; if (i % 10 = 5)j+; cout m=m/10) if (m
6、 % 10 = 5) cout break; int main()J();System(“pause”);11.编写一程序,输入一个正整数n,求大于等于n的最小素数。 int x, b, i, m, k;请输入一个整数: x; b = sqrt(x);= b; if (x%i = 0) break;= b+ 1) cout x = k + 1) cout m break; system( int n, k, m, i, j; for (i = n; i+) for (j = 2; j*j= i) break; 12.从键盘输入一个小于15的正整数,计算其阶乘。13.编程计算1!+2!+3!+.
7、+n!。n从键盘输入。int sum2(int n)int sum=0,t=1;for(int j=1;=n;t=1;for(int i=1;=j; t=t*i;sum=sum+t;return sum;while(1)sum=sum2(n) j = j / 10) sum = sum + j % 10; if (sum = m) cout int n, m;15.已知xxz+yzz=532,求所有可能的x,y,z的值 for (int x = 0;= 9; x+) for (int y = 0; y y+) for (int z = 0; z z+) int k = x * 10 + x *
8、 100 + z + y * 100 + z * 10 + z; if (k = 532)cout return 0;16.编程从键盘中随机输入若干整数,统计其中正整数、0、负整数数的个数。当输入整数100000时结束输入。void main() int n=0,m=0,k=0,c=0; while (n != 100000) cout 0)k+; else if (n = 0)m+; else if (n 0)c+;正整数的个数是: k 负整数的个数是:0的个数是:17.编写一程序,输入一个正整数n,求小于等于n的最大素数。18.求100999中的。所谓水仙花数是指一个三位数,它的每位数字的
9、立方之和等于该数。例如,因为153135333,所以153为水仙花数。 for (i = 100;= 999; int j, sum = 0; j = i; while (j) int k = j % 10; sum = sum + k*k*k; j = j / 10; if (sum = i)cout sum 19.求1000之内的所有完数。所谓完数是指一个数恰好等于它的所有因子之和。例如,6123,所以6为完数。20. 编一程序显示如下图案:* * * * * * * * * * * * * * * * * * * * *21.编一程序显示如下图案:AA B CA B C D E for
10、(int i = 1;= n; i+) setw(20 - i); for (int j = 0; 2 * i - 1; char t = A+j; t; f(3);21.根据/4 =1-1/3+1/5-1/7+求的近似值,直到最后一项的值小于0.000001为止。22. 猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,发现只剩一个桃子了,求猴子第一天究竟摘了多少个桃子?23.编程序模拟剪刀,石头和纸游戏。游戏规则为:剪刀剪纸,石头砸剪刀,纸包石头玩游
11、戏者从键盘上输入s (表示剪刀)或(表示石头)或(表示纸),要求两个游戏者交替输入,计算机给出输赢的信息。24.编写程序输出菲波那切数列的前20项。即前两项为1,以后每一项为前两项之和。25.打印九九乘法表。26.若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛?27.编写程序,输入一个整数,求该整数是几位数?并输出最高位数字。 int x = 0,j=0; i = i / 10) if (x j = j / 10) s = s + j % 10; if (s = k) int t, z = sqrt(i); for (t = 2; t = k + 1) l+; if (l % 6= 0)cout f(10000, 99999, 43);(正确)void foundPrime(int n) int k = 0; for (int i = 100
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2