51Testing软件测试论坛

标题: 亲们,这道C语言的输出结果是多少呢 [打印本页]

作者: 虾米xin    时间: 2012-12-30 10:36
标题: 亲们,这道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.14  C.随机值  D.0
这个答案上写的是C。可为什么我觉得是A呢?
亲们看下结果是多少呢?是不是答案错了呀
作者: msnshow    时间: 2012-12-30 11:53
不用看了,拿来运行下就知道结果了
作者: 六月天    时间: 2012-12-30 11:55
这题是让你找错的。
sum没有初始值,所以计算结果是任意值。
作者: 虾米xin    时间: 2012-12-30 18:35
回复 3# 六月天


    额?C中,SUM定义了INT型,没有赋值的话,不是默认为0么?
作者: 正在更新    时间: 2012-12-30 22:18
随机值!静态基类型变量定义为初始化 系统会默认为其赋值为0
作者: 旭丶枕边爱    时间: 2013-1-7 14:07
用 VC 2005 用行 是 16  难道是  sum 不初始化 为1了
作者: 六月天    时间: 2013-1-7 21:53
我晕哦,c语言的基础知识啊,未给初始值的局部变量,值可能是任意一个值。
作者: 虾米xin    时间: 2013-1-9 11:04
回复 7# 六月天


    哦,呵呵菜鸟一枚,谢谢前辈指点儿哦
作者: fengerapple    时间: 2013-1-25 17:30
Thank you very much for sharing!The good man!The good life of peace!
作者: lzsong520    时间: 2016-9-1 16:45
sum没有初始值,程序没意义!
作者: 简单的事情    时间: 2016-9-1 21:01
sum 没有初始化,int new sum,初始化静态变量结果就是A了,不过后面的 sum+=i的意思是不是等同于sum=sum+i ?同小白




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2