作业帮 > 综合 > 作业

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

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/29 21:47:14
用欧几里得算法(辗转相除法)求最大公约数,C语言编程
#include
#include
int main()
{
int m,n,a,p,q,r;
printf("输入两个正整数");
scanf("%d,%d",&m,&n);
p=m;
q=n;
if(m
用欧几里得算法(辗转相除法)求最大公约数,C语言编程
你的程序是正确的,
瑕疵在于
scanf("%d,%d",&m,&n);
scanf函数,双引号内光写格式就好了,不用写逗号什么的,多写什么程序运行的时候就要输入什么.如你所写,运行时就应输入:12,24 若你在12与24之间按的是空格或其他有可能影响到第二个变量取不到值.
所以建议改为
scanf("%d%d",&m,&n); 程序运行要求输入时两个数之间按空格回车随你.
再问: 嗯,if语句和while语句中需要用{ }标注吗?会引起误解吗?就像刚才那位朋友说的,加上{ }有必要吗?
再答: if和while后面一般都要加{},当后面只有一条语句时可以省略。 所以你的程序中if后面是要加{}的,你有三条语句。我刚没注意到这点。