输入两个正整数m n,求最大公约数和最小公倍数。不知道下面打代码有什么问题,求佬解答

#include<stdio.h>

int main()
{
int i,n,m,v;
scanf("%d%d",n,m);
for(i=mn;i>1;i--);
{if (m%i==0&&n%i==0)
printf("%d",i);
}
for(v=1;v<(m
n);v++);
{if (v%m==0&&v%n==0)
printf("%d",v);
}

return 0;

}

用下面的代码吧,你那里面好几处错误
比如:scanf("%d%d",n,m)这个,应该是scanf("%d %d",&n,&m)

#include<stdio.h>//头文件 
int main()//主函数 
{  
    int m, n, num1, num2, temp;//定义整型变量  
    printf("请输入两个数:");//提示语句  
    scanf("%d %d", &num1, &num2);//键盘输入两个数    
    m=num1; //赋值    
    n=num2; //赋值  
    while(num2!=0) // 余数不为0,继续相除,直到余数为0    
    {        
        temp=num1%num2;        
        num1=num2;        
        num2=temp;   
    } 
    printf("最大公约数是:%d\n", num1);//输出最大公约数  
    printf("最小公倍数是:%d\n", m*n/num1);//输出最小公倍数 
    return 0;
}

你的问题挺多的,在你的基础修改了下
#include<stdio.h>

int main()
{
int i,n,m,v,a,b;
scanf("%d%d",&n,&m);
a=m*n;
b=n<m?n:m;

for(i=1;i<=a;i++)
{
if (i%m==0&&i%n==0)
{
printf("最小公倍数:%d\n",i);
break;
}
}
for(v=b;v>=1;v--)
{
if (m%v==0&&n%v==0)
{printf("最大公因数:%d",v);break;}
}
return 0;
}