for (i=2;i<=k;i++)
if (m%i==0)
break;
if (i<=k)
printf(\else
printf(\
}
7. 编写程序求两个数的最大公约数。
#include
int m,n,gcd;
scanf(\for (gcd=m;gcd>=1;gcd--)
if (m%gcd==0&&n%gcd==0)
break;
printf(\}
8. 函数 fun 的功能是计算下面表达式的值:
1 ? ...???1 sum?? 1???1 ??2! 3! n! 请根据已经给出的代码完成 fun 函数。
#include
int i; double fact=1,sum=0; for (i=1;i<=n;i++) { fact*=i; sum+=1.0/fact; } return(sum);
}
void main( ) {
int n;
scanf(\
printf(\}
9. 函数 isPrime 的功能是判断参数 m 是否是素数,如果是素数,返回整数 1,不是素数则返回整 数 0。请根据已经给出的代码完成该函数。
#include
第 16 页 共 20 页
int i,k; k=(int)sqrt(m); for (i=2;i<=k;i++) if (m%i==0) return(0); }
void main( ) {
int m; do {
printf(\scanf(\}while(m<=1); if (isPrime(m)==1)
printf(\else
printf(\
}
10. 函数 fun 的功能是计算下面表达式的值:
return(1);
// 输入的 m 必须大于等于 2
1 1 1 1
sum?????? ...???1* 2 2 * 3 3 * 4 n(n?? 1)
请根据已经给出的代码完成 fun 函数。
#include
double fun(int n) {
int i; double sum=0; for (i=1;i<=n;i++) sum+=1.0/(i*(i+1)); return(sum);
}
void main( ) {
int n; do {
printf(\scanf(\}while(n<1);
printf(\}
// 输入的 n 必须大于等于 1
第 17 页 共 20 页
11. 编写函数,计算
C m 。m 和 n 在主函数中输入,计算结果在主函数中输出。1≤m,n≤12,n<
m! n
。 m。计算时使用如下公式: C m???
n!?m?? n?! 主函数已经给出,请根据已有内容编写自定义函数 Fact。
#include
int Fact(int n) {
int i,fact; fact=1; for (i=1;i<=n;i++) fact*=i; return(fact); }
void main( ) {
int m,n,c;
scanf(\c=Fact(m)/(Fact(n)*Fact(m-n)); printf(\}
12. 从键盘输入 10 个整数存放在一个一维数组中,找出最大的数并输出。
#include
int a[10],i,k; for (i=0;i<10;i++)
scanf(\k=0;
for (i=1;i<10;i++)
if (a[k]
k=i;
printf(\}
13. 编写程序,输入 10 个整数,按从小到大的顺序排序后输出。
#include
int a[11],i,j,temp; for (i=1;i<=10;i++)
scanf(\for (i=1;i<=9;i++)
for (j=1;j<=10-i;j++)
if (a[j]>a[j+1])
n
第 18 页 共 20 页
{ temp=a[j];
a[j]=a[j+1];
a[j+1]=temp; }
for (i=1;i<=10;i++)
printf(\
}
14. 编写程序,将字符数组 str2 中的全部字符连接到字符数组 str1 的后面。不得使用 strcat 函数。
#include
char str1[80],str2[50]; int i,j; gets(str1); gets(str2);
for (i=0;str1[i]!='\\0';i++)
;
for (j=0;str2[j]!='\\0';i++,j++)
str1[i]=str2[j]; str1[i]='\\0'; puts(str1); }
第 19 页 共 20 页
填空题参考答案: 1. 函数 2. %(或取余) 3. pow 4. fabs 5. 顺序结构 6. //
7. (1)/* (2)*/
8. (1)数字 (2)下划线9. double 10. sizeof 11. 5,6 12. '\\n' 13. 分号 14. 3 15. default 16. 空 17. break 18. p 19. p=&x; 20. (1)|| ( 2)==
21. 2 22. 1 23. for 24. 分号 25. p=NULL; 26. a>10&&a<20 27. 0 28. 10
29. x%3==0&&x%7==0
30. return 31. void 32. 地址 33. 不同 34. 嵌套 35. main 36. math.h 3)下划线 37. 全局变量 38. p=&i;
39. (1)p2=&a; (2)p2=p1; 40. 0 41. 0 42. a[2][3] 43. CD 44. 3 45. a[5] 46. a[1][0] 47. 2 48. ina 49. '\\0'
50. (1)14 (2)m 51. 9 52. 7 53. strcat 54. 按行存储 55. i*m+j 56. 8 57. 9
58. (1)(*p).x
(2)p->x
第 20 页 共 20 页
(