1.猜数字游戏
#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int n; srand(time(NULL)); n=1+(rand()%100);//生成0~100之间的随机整数 printf("猜猜这个数是几:"); int a; int i; for(i=1;i<=10;i++) { scanf("%d/n",&a); if(a==n) { if(i==1) printf("Bingo!"); else if(i<=3) printf("Lucky You!"); else printf("Good Guess!"); break; } else if(a<=0) { printf("Game Over"); break; } else if(a>n) { printf("Too big\n"); } else if(a<n) { printf("Too small\n"); } else; if(i==10) { printf("Game Over"); break; } else; } return 0; }
2.最大公约数 最小公倍数
#include <stdio.h> int main() { int a,b,i,m,n; scanf("%d %d",&a,&b); m=1; for(i=2;i<=a;i++) { if(a%i==0 && b%i==0) m=i; } printf("它们的最大公约数为:%d\n",m); n = a*b; for(i=a*b-1;i>=a;i--) { if(i%a==0 && i%b==0) n=i; } printf("它们的最小公倍数为:%d",n); return 0; }
疑问:2.求最大公约数最小公倍数最开始我是这样做的
#include<stdio.h> int main() { printf("请输入两个正整数:"); int a,b,c,d,m,n; scanf("%d %d",&a,&b); if(a>=b) { c=a; d=b; } else if(a<b) { c=b; d=a; } int i; for(i=d;i>=1;i--) { if(a%i==0 && b%i==0) m=i; break; } printf("最大公约数为:%d\n",m); int f; for(f=c;f<=a*b;f++) { if(f%a==0 && f%b==0) n=f; break; } printf("最小公倍数为:%d",n); return 0; }
但是大多能对,但就是有几组数不对,比如15 20。。。改动了好多次都不对,定义的时候给m和n赋过值运行过,所以我觉得好像是有可能m和n在循环过后还是没赋上值,但是为什么还是没发现,求解
时间: 2024-12-22 18:23:46