C语言,提示浮点错误怎么回事?

编写程序,在主函数中输入两个正整数a,b,调用两个函数fun1()和fun2(),分别求a和b的最大公约数和最小公倍数,在主函数中输出结果。输入格式:两个正整数输出格式:... 编写程序,在主函数中输入两个正整数 a,b,调用两个函数 fun1() 和 fun2(),分别求 a 和 b 的最大公约数和最小公倍数,在主函数中输出结果。
输入格式:
两个正整数
输出格式:
最大公约数和最小公倍数

这是我编的,通过了两个,另外一个就是不过:

#include <stdio.h>

int main()
{ // insert code here...
int haha(int x,int y);
int mama(int m,int n);
int a1,a2;
scanf("%d,%d",&a1,&a2);
printf("最大公约数:%d\n",haha(a1,a2));
printf("最小公倍数:%d\n",mama(a1,a2));

}
int haha(int x,int y)
{
int i,t,m=1;
if(x>y)
{ x=t;
x=y;
y=t;}
for(i=1;i<=x;i++)
{if(x%i==0&&y%i==0)
m=i;}
return(m);
}

int mama(int h,int n)
{
int t,j=0,k=0;
if(h>n)
{h=t;
h=n;
n=t;}k=n;
while(j==0)
{ if(k%h==0&&k%n==0)
j=1;k++;

}k--;
return(k);
}
展开
 我来答
小黑哎啊
科技发烧友

2020-04-28 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:1642
采纳率:74%
帮助的人:345万
展开全部

#include <iostream>

#include<iomanip>//小数点保留函数头文件 

using namespace std;

int main()

{

int n,i;

float s;

cin>>n;

s=0; 

for(i=1;i<=n;i++)//这要i=1开始;如果从i=0,分母为0,算法错误

s+=1.0/(i*(i+1)*(i+2));//整型转化为float(浮点型)时要乘1.0; 

cout.setf(ios::showpoint);

cout.precision(6);//保留6位小数 

cout.setf(ios::fixed);

cout<<"s="<<s<<endl;

return 0;

}

9979496
2016-12-29 · TA获得超过1175个赞
知道小有建树答主
回答量:850
采纳率:100%
帮助的人:605万
展开全部
#include <stdio.h>

int main()
   { // insert code here...
    int gcd(int x,int y);
    int mama(int m,int n);
    int a1,a2;
    scanf("%d,%d",&a1,&a2);
    printf("最大公约数:%d\n",gcd(a1,a2));
    printf("最小公倍数:%d\n",mama(a1,a2));
    
    }
int gcd(int x,int y)
{
    int i,t,m;
    i=x;m=y;
    while(m)
    {
     t=i%m;
     i=m;
     m=t;
    }
    return(i);
}

int mama(int m,int n)
{
return m*n/gcd(m,n);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
高磨大狙
2018-10-12
知道答主
回答量:1
采纳率:0%
帮助的人:802
展开全部
m 不可以为0 因为取模类似除法 分母不可为零 t=i%m 在while最后一次循环m被赋值为零了 。while条件里面应该为 m != 1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式