虾米xin 发表于 2012-12-30 10:36:28

亲们,这道C语言的输出结果是多少呢

本帖最后由 虾米xin 于 2012-12-30 11:36 编辑

有如下C语言程序
        #include <stdio.h>
        void main()
        {
                int i;
                int sum;
                for ( i = 1 ; i < 6 ; i++ )
                                sum += i ;
                printf(“%d\n”, sum);
   }
   则程序运行后的输出结果为()
   A.15    B.14C.随机值D.0
这个答案上写的是C。可为什么我觉得是A呢?
亲们看下结果是多少呢?是不是答案错了呀

msnshow 发表于 2012-12-30 11:53:26

不用看了,拿来运行下就知道结果了

六月天 发表于 2012-12-30 11:55:11

这题是让你找错的。
sum没有初始值,所以计算结果是任意值。

虾米xin 发表于 2012-12-30 18:35:56

回复 3# 六月天


    额?C中,SUM定义了INT型,没有赋值的话,不是默认为0么?

正在更新 发表于 2012-12-30 22:18:51

随机值!静态基类型变量定义为初始化 系统会默认为其赋值为0

旭丶枕边爱 发表于 2013-1-7 14:07:27

用 VC 2005 用行 是 16难道是sum 不初始化 为1了

六月天 发表于 2013-1-7 21:53:09

我晕哦,c语言的基础知识啊,未给初始值的局部变量,值可能是任意一个值。

虾米xin 发表于 2013-1-9 11:04:39

回复 7# 六月天


    哦,呵呵菜鸟一枚,谢谢前辈指点儿哦

fengerapple 发表于 2013-1-25 17:30:27

Thank you very much for sharing!The good man!The good life of peace!

lzsong520 发表于 2016-9-1 16:45:10

sum没有初始值,程序没意义!:)

简单的事情 发表于 2016-9-1 21:01:15

sum 没有初始化,int new sum,初始化静态变量结果就是A了,不过后面的 sum+=i的意思是不是等同于sum=sum+i ?同小白
页: [1]
查看完整版本: 亲们,这道C语言的输出结果是多少呢