用欧几里得算法(辗转相除法)求最大公约数,C语言编程

用欧几里得算法(辗转相除法)求最大公约数,C语言编程
#include
#include
int main()
{
int m,n,a,p,q,r;
printf("输入两个正整数");
scanf("%d,%d",&m,&n);
p=m;
q=n;
if(m
AM13 1年前 已收到1个回答 举报

想以下自己吧 幼苗

共回答了16个问题采纳率:100% 举报

你的程序是正确的,
瑕疵在于
scanf("%d,%d",&m,&n);
scanf函数,双引号内光写格式就好了,不用写逗号什么的,多写什么程序运行的时候就要输入什么.如你所写,运行时就应输入:12,24 若你在12与24之间按的是空格或其他有可能影响到第二个变量取不到值.
所以建议改为
scanf("%d%d",&m,&n); 程序运行要求输入时两个数之间按空格回车随你.

1年前 追问

3

AM13 举报

嗯,if语句和while语句中需要用{ }标注吗?会引起误解吗?就像刚才那位朋友说的,加上{ }有必要吗?

举报 想以下自己吧

if和while后面一般都要加{},当后面只有一条语句时可以省略。 所以你的程序中if后面是要加{}的,你有三条语句。我刚没注意到这点。
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 1.023 s. - webmaster@yulucn.com