谁来帮我看看我的这个程序在gcc下调试出现 "段错误"

//用三种循环求1+2+3...+100#include<stdio.h>#include<string.h>intmain(intargc,char**argv){in... //用三种循环求1+2+3...+100

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
int i, sum = 0;

i = 1;

if (argc < 2)
printf( "input './ for' or './ while' or './ goto' or './ dowhile'");

//for 循环
if (strcmp(argv[1], "for") == 0)
{
for (; i <= 100; i++)
{
sum += i;
}
fprintf(stdout, "'for':the sum is %d\n", sum);
}
//while 循环
else if (strcmp(argv[1], "while") == 0)
{
while (i <= 100)
{
sum += i;
i++;
}
fprintf(stdout, "'while':the sum is %d\n", sum);

}
//goto 循环
else if (strcmp(argv[1], "goto") == 0)
{
loop:if (i <= 100)
{
sum += i;
i++;
goto loop;
}
fprintf(stdout, "'goto':the sum is %d\n", sum);
}
//do while 循环
else if (strcmp(argv[1], "dowhile") == 0)
{
do
{
sum += i;
i++;
} while (i <= 100);
fprintf(stdout, "'do while':the sum is %d\n", sum);
}
else
{
fprintf(stdout, "input './ for' or './ while' or './ goto' or './ do while'");
}

return 0;
}
if (argc < 2)
printf( "input './ for' or './ while' or './ goto' or './ dowhile'");
我是问当我 ./ 不带参数的时候为什么出现段错误
程序应该是这样
//用三种循环求1+2+3...+100

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
int i, sum = 0;

i = 1;

if (argc < 2)
{
printf("input './ for' or './ while' or './ goto' or './ dowhile'\n");
return -1;
}
展开
 我来答
百度网友ecba46aab
2009-08-29 · TA获得超过2303个赞
知道大有可为答主
回答量:2477
采纳率:100%
帮助的人:1978万
展开全部
看看

运行的时候要带参数。假定你的exe是add.exe
你点开始->运行 在运行编辑框中输入add.exe for

if (argc < 2)
{
printf( "input './ for' or './ while' or './ goto' or './ dowhile'");
return -1;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式