首页 > 代码库 > 张照行的第四次作业
张照行的第四次作业
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在循环过后还是没赋上值,但是为什么还是没发现,求解
张照行的第四次作业
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。