<2022 湖北师范大学真题>打印九九乘法口诀表。(要求:右上角)
#include <stdio.h>
int main(){
int i,j,k;
for(i=1;i<=9;i++){
for(k=1;k<i;k++){
printf("\t");
}
for(j=i;j<=9;j++){
printf("%d*%d=%d\t",i,j,i*j);
}
printf("\n");
}
return 0;
}
<2022 湖北师范大学真题>输入两个正整数 m 和 n,求其最大公约数和最小公倍数。
#include <stdio.h> int main(){ int m,n,a,b; scanf("%d %d",&m,&n); a=m*n; b=m%n; while(b!=0){ m=n; n=b; b=m%n; } a/=n; printf("最大公约数是:%d\n最小公倍数是:%d\n",n,a); return 0; }
<2022 湖北师范大学真题>双向选择排序从小到大。
#include <stdio.h> void fun(int a[],int n){ int i,j,min,t=0; for(i=0;i<n-1;i++){ min=i; for(j=i+1;j<n;j++){ if(a[j]>a[min]){ min=j; } } if(min!=i){ t=a[min]; a[min]=a[i]; a[i]=t; } } } int main(){ int a[6]={8,5,9,1,0,6},i; fun(a,6); for(i=0;i<6;i++){ printf("%d ",a[i]); } return 0; }
<2022 湖北师范大学真题>输入正整数 m,打印 m 以内既是素数又是因数的数。
#include<stdio.h> int s(int n){ if(n<2)return 0; for(int i=2;i<n;i++) if(n%i==0)return 0; return 1; } int main() { int m; scanf("%d",&m); for(int i=1;i<m;i++) if(s(i)&&(m%i==0)) printf("%d ",i); return 0; }
<2022 湖北师范大学真题>累加和:打印从 m 累加到 n 的和。
#include<stdio.h> int main(){ int m,n,sum=0; scanf("%d,%d",&m,&n); while(m<=n) sum+=m++; printf("sum=%d\n",sum); return 0; }
<2022 湖北师范大学真题>打印杨辉三角形。(要求:使用递归函数)
#include <stdio.h> int fun(int i,int j){ if(j==i || j==0){ return 1; }else{ return fun(i-1,j-1)+fun(i-1,j); } } int main(){ int n,i,j; scanf("%d",&n); for(i=0;i<n;i++){ for(j=0;j<=i;j++){ printf("%d ",fun(i,j)); } printf("\n"); } return 0; }
<2023 湖北师范大学真题>输入两个正整数 m 和 n,求其最大公约数和最小公倍数。(要求:使用递归函数)
#include <stdio.h> int fun(int m,int n){ int b=m%n; if(b!=0){ return fun(n,b); }else{ return n; } } int main(){ int m,n,a; scanf("%d,%d",&m,&n); a=m*n; printf("最大公约数:%d\n最小公倍数:%d\n",fun(m,n),a/fun(m,n)); return 0; }
<2023 湖北师范大学真题>求正整数n之内的所有完数及因子、完数个数。
#include <stdio.h> #define N 100 int main(){ int i,n,m,sum,k,j,a[N]; scanf("%d",&n); for(m=1;m<=n;m++){ sum=0; k=0; for(i=1;i<m;i++){ if(m%i==0){ sum+=i; a[k++]=i; } } if(sum==m){ printf("%d=",m); for(j=0;j<k;j++){ printf("%d",a[j]); if(j<k-1){ printf("+"); } } printf("\n"); } } return 0; }