注册 登录
编程论坛 C语言论坛

我是名新手,下列程序哪里错误如何纠正,请大神赐教

hellloworld 发布于 2020-04-09 11:15, 2707 次点击
只有本站会员才能查看附件,请 登录

#include<stdio.h>
void main()
{
    double sum,a=1,b;
    int i;
    for (i=1;i<=100;i++)
    {
        b=i/a;
        sum=sum+b;
        a=-a;
    }
    printf("%if",sum);
}
9 回复
#2
叶纤2020-04-09 13:52
不知道你具体想问什么
从图片上看你建立的应该是cpp文件,而不是.c文件,具体还是需要看你用的什么编译器
从代码上看,如果是用的c++编译器,是不支持void的,应改为int
我对c不熟悉,没记错的话double对应的是%f,而不是%if
从代码逻辑上看也不知道你想干啥
从可学习性来看,对于语法,并没有感觉这串代码可以深刻的理解for循环,反而更绕大脑,其他更深层的问题,就不清楚了
#3
八画小子2020-04-09 14:26
你截图的问题和程序无关,可能是没有编译成功。
#4
专业课的小白2020-04-09 15:21
回复 楼主 hellloworld
这个题目的要求是什么呢?
#5
飞天大烧卖2020-04-09 16:03
算1 -2 3 -4 ....  99 -100 和吧
#include<stdio.h>
int main(void)
{
    int sum=0,a=1,b;
    int i;
    for (i=1;i<=100;i++)
    {
        b=i/a;
        sum=sum+b;
        a=-a;
    }
    printf("%d",sum);
}
#6
自学的数学2020-04-09 17:23
如果是计算1 -2 3 -4 ....  99 -100 和。可以:
程序代码:
#include <stdio.h>
main()
{
int i, t= -1, sum = 0;
for (i = 1; i <= 100; i++)
sum += i * (t *= -1);
printf("%d\n",sum);
}
#7
hbccc2020-04-09 19:53
你没编译吧,另外sum没有赋初值,%if ?  是啥,恕在下孤陋寡闻
#8
return_02020-04-10 22:13
%lf
#9
xiaochizhen2020-04-17 10:33
b=(double)i/a,强制转换
#10
lin51616782020-04-17 10:46
void main改int main
注意sum初始化
1