C语言0错误 0警告但是debug error.

#include<stdio.h>intmain(){intn,i,sum,de,nu,mid;printf("pleaseenternumber:");scanf("%... #include <stdio.h>
int main()
{
int n,i,sum,de,nu,mid;
printf("please enter number: ");
scanf("%f",&n);
if (n<=0)
printf("error\n");
else
{
for(i=1,sum=0,de=1,nu=1;i<=n;i++)

sum=sum+de/nu;
mid=de;
de=de+nu;
nu=mid;

printf("n=%.0f,sum=%f\n",n,sum);
}
}求大神给答案
展开
 我来答
百度网友83cdc1c
2013-06-06 · TA获得超过5792个赞
知道大有可为答主
回答量:1907
采纳率:100%
帮助的人:848万
展开全部
#include <stdio.h>
int main()
{
 int n,i,de,nu,mid;
 float sum;    //sum定义成float
 printf("please enter number: ");
    scanf("%d",&n);    //输入整型用%d
 if (n<=0)
       printf("error\n");
 else
 {
  for(i=1,sum=0,de=1,nu=1;i<=n;i++)
    {
   sum=sum+de/nu;    //这四句应该用{}括起来
   mid=de;
   de=de+nu;
   nu=mid;
    }
  printf("n=%d,sum=%f\n",n,sum);    //输出整型用%d
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cd3d6c4
2013-06-06 · TA获得超过315个赞
知道小有建树答主
回答量:262
采纳率:0%
帮助的人:279万
展开全部
#include <stdio.h>
int main()
{
int n,i,sum,de,nu,mid;
printf("please enter number: ");
scanf("%d",&n);//==============这里
if (n<=0)
printf("error\n");
else
{
for(i=1,sum=0,de=1,nu=1;i<=n;i++)

sum=sum+de/nu;
mid=de;
de=de+nu;
nu=mid;
printf("n=%d,sum=%d\n",n,sum);//==========这里
}
}

希望回答能帮到你,哪里不清楚再问。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jim2zj2zj
2013-06-06 · 超过31用户采纳过TA的回答
知道答主
回答量:122
采纳率:100%
帮助的人:86.1万
展开全部
  1.  n等变量均改为float

  2. for循环里,四句代码应该用{},否则只会循环执行sum=sum+de/nu;这一句

    for(i=1,sum=0,de=1,nu=1;i<=n;i++)

      sum=sum+de/nu;
      mid=de;
      de=de+nu;
      nu=mid;

    }

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yanl012
2013-06-06
知道答主
回答量:53
采纳率:0%
帮助的人:13万
展开全部
数据定义格式不对,你定以为整数,输入类型为浮点数,应将类型改为float

#include <stdio.h>
int main()
{
float n,i, sum,de,nu,mid;
printf("please enter number: ");
scanf("%f",&n);
if (n<=0)
printf("error\n");
else {
for(i=1,sum=0,de=1,nu=1;i<=n;i++)
sum=sum+de/nu;
mid=de;
de=de+nu;
nu=mid;
printf("n=%.0f,sum=%f\n",n,sum);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
renjie413256
2013-06-06
知道答主
回答量:18
采纳率:0%
帮助的人:6.1万
展开全部
很简单,把scanf("%f",&n);改成scanf("%d",&n);
把printf("n=%.0f,sum=%f\n",n,sum);改成printf("n=%.0d,sum=%d\n",n,sum);
我在c++上试过了,没错的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式