1. 编写一个计算阶乘的函数fac,在主函数中从键盘输入一个正整数,调用阶乘函数fac
计算阶乘并输出计算结果。
2. 编写一个求x的y次幂的函数pw,在main函数中从键盘输入a.b的值,然后调用pw
函数求a的b次幂,并输出结果。
3. 写一函数max,计算三个数中最大数。在主函数中输入三个数,调用该函数求出其中最
大数并输出.(要求三个数是实数)
4. 写一个函数计算两个正整数的最大公约数,在主函数中用scanf输入m,n两个正整数,
调用函数后,打印函数返回值(即这两个正整数的最大公约数)。 5. 编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数中调用该函数,
输出200以内所有的素数。
6. 编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数中输入一个整
数,调用该函数,判断该函数是不是素数,若是输出“YES”,若不是输出“NO”.
7. 将1—1000中所有21的倍数存到一个一维数组中,再按每行5个数据输出到屏幕上。 8. 在屏幕上打印以下图案:(在屏幕上打印以下图案:(要求打印n行,n用符号常量定义
为7)
* ** ***
9. 输出所有在正整数200和300之间能被6整除、但不能被4整除的数,并统计这样的数
有多少个。
10. 求S=1/1+1/2+1/3+……+1/100(精确到小数点后三位)。
11. 编写一个程序从键盘输入10个学生的成绩到数组score中,将最高分、最低分输出。 12. 在main()函数输入一个人的年龄和性别,女士55岁退休,男士60岁退休。编写一个函
数根据年龄和性别判断一个人是工作还是退休,若工作,则输出“Working”,若退休则输出“retired”。
13. 编写一个函数求一个实数的绝对值。然后在main函数中用scanf输入任意个实数,调
用该函数求它的绝对值并输出。
14. 编写一求1-n内的偶数和的函数,在main函数中输入n,然后调用该函数求1-n的偶
数和并输出。
15. 编写一个函数,将将三个数由小到大的顺序排列并输出,在main函数中输入三个数,
调用该函数完成这三个数的排序。
16. 编写一函数,将摄氏温度转换华氏温度,转换公式为:f=1.8*c+32.0。在main函数中调
用该函数,计算并在屏幕上显示从摄氏0度到100度,每隔10度转换一次的华氏温度。 17. 编写一个函数,该函数的功能是打印1——n中所有7的倍数,在main函数中输入n,
调用该函数输出结果。
18. 编写一个函数判断一个正整数是否为奇数,在主函数中用scanf输入正整数m,调用该
函数后,根据函数返回值判断这个正整数是否为奇数,若是则输出“yes”,若不是则输出”no”。
19. 编写一个函数,判断某一个四位数是不是玫瑰花数。在主函数中从键盘任意输入一个四
位数,调用该函数,判断该数是不是玫瑰花数,若是则输出“yes”,若不是则输出”no”。 20. 编写一个函数,判断某一个三位数是不是水仙花数。在主函数中调用该函数,输出所有
水仙花数。
21. 编写一个函数,函数的功能是求出所有在正整数M和N之间能被5整除但不能被3整
除的数并输出,其中M 不能被3整除的数。 22. 编写一个函数,函数的功能:检验一个输入的四位数是否是闰年,如果是闰年则返回1, 否则返回0。在主函数中从键盘任意输入一个四位数,调用该函数进行判断,若是则输出“yes”,若不是则输出”no”。 23. 编写一个函数,求两数中的较大数。在main函数中输入三个数,调用该函数求这三个 数的较大数并在屏幕上输出。 24. 编写一个函数min,返回三个数中的最小数。在main函数中输入三个数,调用该函数 求这三个数的最小数并在屏幕上输出。 25. 编写一个函数计算n!。在主函数中调用该函数计算1!+2!+3!+……10!,并输出结 果。 26. 编写一个求直角三角形的面积的函数。在主函数中从键盘输入直角三角形的两个直角 边,调用该函数求该直角三角形的面积。 27. 编写一个求圆的面积的函数。在main函数中从键盘输入半径,然后调用该函数求该圆 的面积。 28. 某商场根据客户购物的数量打折,根据商品的单价p数量n,编写函数fun计算应付款。 在main函数中输入单价和数量,调用该函数输出应付款。 29. 编写一个函数,判断给定的三边长能否构成直角三角形,能构成直角三角形则返回1, 否则返回0。在main函数中从键盘输入三边长,调用该函数,若是直角三角形则输出“yes”,若不是则输出”no”。 30. 编写一个函数计算两个正整数的最小公倍数,在主函数中用scanf输入m,n两个正整 数,调用该函数后,打印这两个正整数的最小公倍数。 31. 编写一个程序从键盘输入三个整形数据,按从小到大的顺序输出。 32. 编写一个程序从键盘输入三个整形数据,求它们的和及平均值并在屏幕上显示。 33. 设a,b是直角三角形的两条直角边,用scanf输入a,b的值,计算并输出直角三角形的 周长。 34. 编写一个程序从键盘输入圆柱体的底面半径r和高h,求圆柱体的体积。 35. 用scanf输入一个梯形的上底a,下底b,和高h,求梯形的面积s。 36. 编写一个程序从键盘输入10个整数,求均值和低于均值的个数。 37. 编写一个程序,输出下列数列的前20项,0,1,1,2,3,5,8,13,21,24。 38. 求解一个一元二次方程(分别考虑幂为0,1,2次情况)。 39. 假设某人有钱100枚,希望买100只鸡,公鸡6圆一只,母鸡4圆一只,小鸡0.5圆一 只。试问可以包含几只公鸡,几只母鸡,几只小鸡。 40. 任意输入等比数列的初值和一个公比,求等比数列的前20项的和。 答案 1.#include if (n=0) f=1; else f=n*fac(n-1); return f } main() {long y; int n; printf(); scanf(“%d”,&n); y=fac(n) printf(“%d!=”,n,y,); } 2. #include long s=1; int i; for(i=1;i<=y;i++) s=s*x return s; } main() { long sum; int a,b printf(“\\nEntera,b:”); scanf(“%d%d”,&a,&b); sum=pw(a,b) printf(“The sum is ”,sum); } 3. #include int max(int a,int b,int c) { int max; if(a>b) max=a; else max=b; if(max,c) return max; } main() { int x,y,z; int m; printf(“\\nEnterx,y,z:”); scanf(“%d%d%d”,&x,&y,&z); m=max(x,y,z) printf(“The max is .”,m); } 4. #include if(m%n==0) return n; else return gcd(n,m%n) } main() { inta,b,c,temp; scanf(“%d%d”,&a,&b) if(a>b) temp=a b=temp a=b; c=gcd(a,b) printf(“%d”,c) } 5. #include for(i=2;i<=n;i++) if(n%i==0) break if(i=n) printf(“%d\\t”,n) } main() { int j for(j=2;j<200;j++) f(j) } 6. #include for(i=2;i<=n;i++) if(n%i==0) break if(i=n) printf(“yes”) else printf(“no”) } main() { int m; printf(“\\nEnter zhe m:”) scanf (“%d”,&m) f(m) } 7. #include {int i,j=0,a[50]; for(i=1;i<=1000;i++) {if(i%2==0) {a[j]=i; printf(“]”,a[j]) if(j%5==4) j++ } } } 8. #include int i,j,m; for(i=1;i<=N;i++) { for(j=1;j<=N-i;j++) printf(“”) for(m=1;m<=i;m++) printf(“*”); printf(“\\n”); } } 9. #include for(i=200;i<=300;i++) {if(i%6==0&&i%4!=0) {j++; printf(“%d\\n”,i);