实验三
实验任务1.
1. score_to_grade功能为将输入的得分转化为ABCDE四个等级 形参:整数类型 返回值:字符类型
2.没有break中止单个case里面的内容;ABCDE不应该用双引号而是单引号
实验任务2.
1.功能为将输入的数字翻转过来,如123反转成321
2.可以 方案1中直接除以十取余,将余数逐个输出形成反转过后的数字;方案2中运用递归函数逐个输出
实验任务3.
1.计算x的n次方
2.

实验任务4.
#include<stdio.h> #include<math.h> int is_prime(int n); int main(){ int n; int count; count=0; printf("100以内的孪生素数\n"); for(int n=2;n<=98;n++){ if(is_prime(n) && is_prime(n+2)) { printf("%d %d\n",n,n+2); count++; } } printf("100以内孪生素数共有%d个./n",count); return 0; } int is_prime(int n) { int i; for(i=2;i<n;i++){ if(n%i==0){ return 0; break; } } if(n==1){ return 0; } if(i==n){ return 1; } }

实验任务5.
#include <stdio.h> int func(int n, int m); // 函数声明 int main() { int n, m; int ans; while(scanf("%d%d", &n, &m) != EOF) { ans = func(n, m); // 函数调用 printf("n = %d, m = %d, ans = %d\n\n", n, m, ans); } return 0; } // 函数定义 // 待补足。。。(分别用迭代和递归实现)
int func(int n, int m){
int i,a=1,b=1,h,c;
for(i=n-m+1;i<=n;i++){
a*=i;
}
for(h=1;h<=m;h++)
{b*=h;}
c=a/b;
return c;
}

实验任务6.
#include <stdio.h> int gcd(a,b,c); // 函数声明 // 待补足.... int main() { int a, b, c; int ans; while(scanf("%d%d%d", &a, &b, &c) != EOF) { ans = gcd(a, b, c); // 函数调用 printf("最大公约数: %d\n\n", ans); } return 0; } // 函数定义 // 待补足... int gcd(a,b,c){ int min,i; if(a<b&&a<c) { min=a; } if(b<a&&b<c) { min=b; } if(c<b&&c<a) { min=c; } for(i=min;i>0;i--){ if(a%i==0 && b%i==0 && c%i==0) return i; } }

实验任务7.
#include <stdio.h> #include <stdlib.h> // 函数声明 // 待补足 // xxx int main() { int n; printf("Enter n: "); scanf("%d", &n); print_charman(n); // 函数调用 return 0; } // 函数print_charman定义 // 待补足 // xxx
int print_charman(int n){
int m,i;
m=2*n-1;
for(m;m>0;m-=2)
{
for ( i=(2*n-1-m)/2;i>0;i--)//每一行前面的空格
{
printf("\t");
}
for ( i=m; i > 0;i--) {
printf(" O \t");//将人头和空格绑定在一起
}
printf("\n");
for (i = (2 * n - 1 - m) / 2; i > 0; i--) {
printf("\t");
}
for ( i = m; i > 0; i--) {
printf("<H>\t");//将胸和空格绑定在一起
}
printf("\n");
for ( i = (2 * n - 1 - m) / 2; i > 0; i--) {
printf("\t");//每一行后面的空格
}
for ( i = m; i > 0; i--) {
printf("I I\t");//将腿和空格绑定在一起
}
printf("\n");
}
}

浙公网安备 33010602011771号