回 帖 发 新 帖 刷新版面

主题:求教 这个在没有输入的情况下 为何直接运行了程序

#include    <stdio.h>
int main()
{
    int x;
    int sum=0;
    whlie(x=-11)
    {
        return 0;
    }
    while(x!=-11)
    {
        for(x=1;x<11;x++)
        {
            sum=sum+x;
        }
        printf("%d",sum)
    }
}

回复列表 (共7个回复)

沙发

x没有赋值;
但是x中有一个垃圾值;
所以运行了!!
可以修改哈:
#include    <stdio.h>
int main()
{
    int x;
    int sum=0;
    printf("请您输入一个x值:\n");
      scanf("%d" ,&x);
    while(x==-11)
    {
        return 0;
    }
    while(x!=-11)
    {
        for(x=1;x<11;x++)
        {
            sum=sum+x;
        }
        printf("%d",sum);
        break;
    }
}

板凳


垃圾值是什么?我输入一个值后 最后不能显示1-10的和了吧?

3 楼

我把自己的修改了哈!
你在看哈!

4 楼

想问个问题,你的程序想表达什么。给我的第一感觉是没意义

5 楼


#include    <stdio.h>
int main()
{
    int x;//[color=FF0000]没有赋初值,这样一来后面的比较就没有意义了[/color]
    int sum=0;
    whlie(x=-11) //[color=FFFF00]此处的while写错了,并且括号里的应该是x==-11,是双等号??[/color]
    {
        return 0;
    }
    while(x!=-11)
    {
        for(x=1;x<11;x++)
        {
            sum=sum+x;
        }
        printf("%d",sum)//[color=008000]此处少了分号[/color]
    }//[color=FF00FF]缺少return语句[/color]
}

6 楼

o(︶︿︶)o 唉,要细心啊

7 楼

你没用编译器吗?这么多语法错误的代码也拿上来了。
int x不是垃圾值,是编译器给变量分配的起始地址

我来回复

您尚未登录,请登录后再回复。点此登录或注册