一个C的程序问题

来源:百度知道 编辑:UC知道 时间:2024/05/31 00:10:03
#include "stdio.h"
main()
{
int m,n,r;
scanf("%d,%d,%d",m,n,r);
if(m<n)
{
r=m;
m=n;
n=r;
}
r=m%n;
while(r!=0)
{m=n;
n=r;
r=m%n;}
printf("%d\n",n);
}
这个程序一运行,输入两个数的时候就出现内存报错,也 不知道是怎么会事。

scanf("%d,%d,%d",m,n,r);
这个地方错了
scanf("%d,%d,%d",&m,&n,&r);
要取地址操作,你那样是不对的···
而且 你这
意思是用“, ”两个符号来隔开输入
就是比如你要输入1给m,2给n
就要输入1, 2, 3

你是不是缺点什么了?在地二行加void试试

错误行改为:
scanf("%d,%d,%d",&m,&n,&r);