C语言问题计算

 我来答
戢星微1u
2020-04-06 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:31%
帮助的人:686万
展开全部
因为sum=a+b;的时候a,b都没有赋初值

应该先对a
=
0,b
=
0再参加运算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
祈蕾杞培
2020-04-03 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:33%
帮助的人:690万
展开全部
开始定义变量后没有赋值操作,直接进行了运算
所以出现这种情况,正确的是

void
main()
{int
a,b,sum;

b=1;
a=2;
sum=a+b;
printf("sum
is%d\n",sum);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
葛烟香风
2020-04-06 · TA获得超过3.6万个赞
知道小有建树答主
回答量:1.3万
采纳率:25%
帮助的人:709万
展开全部
void
main()
{int
a,b,sum;
b=1;
a=2;

sum=a+b;
printf("sum
is%d\n",sum);

这样才是你想要的答案3

好简单啊,因为a
,b
没有初始化你就用来计算了,所以这个得到的值是不确定的

希望对你有帮助
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1ade462043
2020-04-05 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:27%
帮助的人:781万
展开全部
顺序问题。编译器是按照循序执行语句

程序当中你先定义了a,b

并没有初始化。编译器给分配了存储空间但其中的内容并不确定。

所以当执行到sum=a+b的时候就把a,b当中的随机的值取了出来。

然后你又定义了a,b的值,这是并不影响sum的值。所以可以这样改

void
main()
{int
a,b,sum;

b=1;
a=2;
sum=a+b;

printf("sum
is%d\n",sum);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鲁实丘辛
2020-05-24 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:32%
帮助的人:876万
展开全部
选B
*(p+8)
过程见下:
*p=a;//初始时数组a的首元素的地址赋给了指针变量p

说明:在C语言里数组名代表数组首元素
,这句话你必须得记住。
推论:

*(p+8)
括号里的优先级比*号要高
,所以先执行
p+8(p+8与a[8]等价)p+8是地址
通过上述可知:*(p+8)//其中“
*
”表示“指向”,*(p+8)表示“指针变量p所指向的变量”即a[8]元素的值9
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式