新手求助,数组求最大公倍数输出总是乱码

qq_42539976 2018-06-25 12:30:59
#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);
}
}
...全文
216 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiao___sun 2018-06-29
  • 打赏
  • 举报
回复
看来lz是不会调试。。。建议lz网上找找怎么调试
张天星 2018-06-28
  • 打赏
  • 举报
回复
最大公倍数...
先不说最大公倍数是什么。
你直接上调试,监视每一个变量的变化。
看看哪一步的计算结果不符合你的预期?
vloso 2018-06-26
  • 打赏
  • 举报
回复
当你3个数不能被整除的时候不断+1值到整除为止所得出的数就是你要求的数,
vloso 2018-06-26
  • 打赏
  • 举报
回复
#include<iostream>
#include <windows.h>
using namespace std;

int main()
{
int a,b,c,d=1;
cin>>a>>b>>c;
while(!(d%a==0&&d%b==0&&d%c==0)) ++d;
cout<<d;
}
灌水号 2018-06-25
  • 打赏
  • 举报
回复
有最小公倍数,最大公因数,就没听说过有最大公倍数的。
赵4老师 2018-06-25
  • 打赏
  • 举报
回复
把所有getchar都注释掉再试试?

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧