一道c语言题目

#include<stdio.h>#include<conio.h>#include<stdlib.h>voidmain(){intpad,sum;sum=pad=5;p... #include <stdio.h>
#include <conio.h>
#include <stdlib.h>
void main()
{
int pad,sum;
sum=pad=5;
pad=sum ++;
pad ++;
++ pad;
printf("%d\n",pad);

}这道题的答案为什么是7?
展开
 我来答
ly4cn
2005-12-30 · TA获得超过807个赞
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
一直以来,++ --语法浪费了太多人的时间。说句实在话,++ -- 在C语言中其实是一个很细节的语法,除了表达简练外,真的没有什么其它的好处了。
由于中国的C语言教程长期以来被谭浩强主宰,而谭又错误的把++ --作为一个C语言重点来教,并增加了一些难点,把本来很简单的语法,搞得复杂无比!

简单的来说,++i 和 i++,在单独使用时,就是 i=i+1。
而 a = ++i,相当于 i=i+1; a = i;
而 a = i++,相当于 a = i; i=i+1;

如果实在搞不明白++ --怎么回事,那也不是什么天塌下来的事。
因为a=++i完全可以写成 i++; a=i。
a=i++完全可以写成 a=i; i++。
而且,这也是一种好的风格。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
十里长亭霜满天青丝白发度何年_8bf1b
2005-12-30 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:132
采纳率:0%
帮助的人:0
展开全部
int pad,sum;
sum=pad=5; //sum= 5 pad=5
pad=sum ++; //pad=5 !!这里取到的是sum的原值.
//如果为pad=++sum则为+1后的值了.
pad ++; //pad=6
++ pad; //pad=7
printf("%d\n",pad);
建议LZ看看C的语法,特别是a++ 和 ++a的区别.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
评戮4251
2005-12-30
知道答主
回答量:30
采纳率:0%
帮助的人:20.3万
展开全部
int pad,sum;
sum=pad=5; 此时都是5
pad=sum ++; 此时pad是6,Sum是5。
pad ++;pad此时为7
++ pad; 程序下次执行时pad+1,此次不加。
printf("%d\n",pad);所以pad7
++变量。。表示变量运算以后加一
变量++。。表示加一以后运算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友379cf85e4
2005-12-30 · TA获得超过747个赞
知道小有建树答主
回答量:790
采纳率:0%
帮助的人:576万
展开全部
i++ 和 ++i 还是有区别的
i++ :如果i=1,打印i的值 i=2;
++i :如果i=1,打印i的值 i=1;
i++先进行累加计算,++i是下次用到才累加。

所以这道题pad=7
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凝素慧5675
2005-12-30 · TA获得超过674个赞
知道小有建树答主
回答量:1155
采纳率:0%
帮助的人:781万
展开全部
sum=pad=5;
pad=sum ++;//先用sum值进行赋值,然后sum自增1,所以pad等于5,这个是关键,所以下面两行代码执行完pad=7
pad ++;
++ pad;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式