新手求助,数组求最大公倍数输出总是乱码
#include <stdio.h>
#include <string.h>
#include <math.h>
int
main()
{
char y;
int a[100],m;
int i,n,j,temp,gcd,lcm,numb1,numb2,numb3;
y=getchar();
printf(" 请输入你要排序的数字个数n(n〉0)的值为: ");
scanf("%d",&n);
printf(" 请输入%d个数字\n",n);
for(i=0;i<n;i++)
{
getchar();
scanf("%d",&a[i]);
}
if(y==112)
getchar();
{
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
if(a[i]<a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for(i=0;i<n;i++)
printf("%d",a[i]);
getchar();
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
numb2=a[i];
numb3=a[j];
while(a[j]!=0)
{
numb1=a[i]%a[j];
a[i]=a[j];
gcd=a[i]*a[j];
a[j]=numb1;
}
lcm=(numb2*numb3)/gcd;
a[j]=lcm;
}
printf("lcm=%d",lcm);
}
}