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

学习 时间:2026-04-07 21:49:02 阅读:3336
用欧几里得算法(辗转相除法)求最大公约数,C语言编程#include #include int main(){int m,n,a,p,q,r;printf("输入两个正整数");scanf("%d,%d",&m,&n);p=m;q=n;if(m

最佳回答

虚幻的刺猬

幽默的发箍

2026-04-07 21:49:02

你的程序是正确的,瑕疵在于scanf("%d,%d",&m,&n);scanf函数,双引号内光写格式就好了,不用写逗号什么的,多写什么程序运行的时候就要输入什么。如你所写,运行时就应输入:12,24 若你在12与24之间按的是空格或其他有可能影响到第二个变量取不到值。所以建议改为scanf("%d%d",&m,&n); 程序运行要求输入时两个数之间按空格回车随你。 再问: 嗯,if语句和while语句中需要用{ }标注吗?会引起误解吗?就像刚才那位朋友说的,加上{ }有必要吗? 再答: if和while后面一般都要加{},当后面只有一条语句时可以省略。 所以你的程序中if后面是要加{}的,你有三条语句。我刚没注意到这点。

最新回答共有2条回答

  • 洁净的火车
    回复
    2026-04-07 21:49:02

    你的程序是正确的,瑕疵在于scanf("%d,%d",&m,&n);scanf函数,双引号内光写格式就好了,不用写逗号什么的,多写什么程序运行的时候就要输入什么。如你所写,运行时就应输入:12,24 若你在12与24之间按的是空格或其他有可能影响到第二个变量取不到值。所以建议改为scanf("%d%d",&m,&n); 程序运行要求输入时两个数之间按空格回车随你。 再问: 嗯,if语句和while语句中需要用{ }标注吗?会引起误解吗?就像刚才那位朋友说的,加上{ }有必要吗? 再答: if和while后面一般都要加{},当后面只有一条语句时可以省略。 所以你的程序中if后面是要加{}的,你有三条语句。我刚没注意到这点。

上一篇 数学化简比:5/6:5/4 求比值:7/12:14/3 过程请写出来

下一篇 求 !山东教育出版社八年级上册英语,前三单元单词. 七年级下册的是这样的↓,别发错了啊,谢谢!