重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
此即为求两个数的最大公约数
淮阴网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联自2013年创立以来到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
最大公约数用欧几里得算法
int gcd(int a, int b)
{
if(0 == a%b)
return b;
return gcd(b, a%b);
}
int main()
{
int a,b,c;
scanf("%d %d", a, b);
c = gcd(MAX(a,b), MIN(a,b));
printf("%d %d\n", a/c, b/c);
return 0;
}
#include stdio.h #include time.h void main() { int num,mark=0,i; int num1,num2,sum,n; scanf("%d",num); srand((unsigned) time(NULL)); for(i=0;inum;i++) { num1=rand()%100; num2=rand()%100; n=rand()%4; switch(n) { case 0 : { printf("%d+%d=\n",num1,num2); printf("输入答案\n"); scanf("%d",sum); if(sum==num1+num2) { printf("right!\n"); mark++; } else printf("wrong!\n"); } break; case 1 : { printf("%d÷%d=\n",num1,num2); printf("输入答案\n"); scanf("%d",sum); if(sum==num1/num2) { printf("right!\n"); mark++; } else printf("wrong!\n"); } break; case 2 : { printf("%d-%d=\n",num1,num2); printf("输入答案\n"); scanf("%d",sum); if(sum==num1-num2) { printf("right!\n"); mark++; } else printf("wrong!\n"); } break; case 3 : { printf("%d*%d=\n",num1,num2); printf("输入答案\n"); scanf("%d",sum); if(sum==num1*num2) { printf("right!\n"); mark++; } else printf("wrong!\n"); } break; } } printf("\n正确个数为%d\n",mark); }
程序运行过程:
接受用户输入两个数, 第一个是分子, 第二个是分母.
输出结果,并等待下一轮.
两个数中任意一个为0, 则程序立即退出.
#includestdio.h
#includeconio.h
main()
{
int iNum,iDeno,iMod,iMin;
iNum=iDeno=1;
while(iNum!=0 iDeno!=0)
{
printf("Please input the numerator and the denominator:\n");
scanf("%i%i",iNum,iDeno);
if (iNum==0 || iDeno==0)
continue;
if (iNumiDeno)
iMin=iNum;
else
iMin=iDeno;
for (int i=2;i=iMin;i++)
{
if (iiNum || iiDeno)
break;
if (iNum%i==0 iDeno%i==0)
{
iNum/=i;
iDeno/=i;
i=1;
}
}
printf("\n%i\n----\n%i\n",iNum,iDeno);
getch();
}
}