两道C语言试题,求讲解;谢谢

3.下列程序的输出结果是100。#defineT10#defineMD3*Tprintf(“%d”,30/MD);为什么等于100谢谢;10.下列程序的输出结果是1,3。... 3. 下列程序的输出结果是 100 。
#define T 10
#define MD 3*T
printf(“%d”,30/MD);

为什么等于100 谢谢;

10. 下列程序的输出结果是 1,3 。
#include <stdio.h>
void p(int *x,int y)
{ ++*x; y--; }
void main( )
{ int x=0,y=3;
p(&x,y);
printf(“%d,%d”x,y);
}

y为什么不受影响呢; 谢谢,说细点~~~
呵呵,谢谢楼下两位朋友;

y-- 换成++y 输出结果 同样是1,3 ; 问题不在这,类似这是什么作用域的问题? 怎么解释我给忘了,二年前学的,现在要应付一个考试;谁再给讲一下谢谢;
展开
 我来答
额滴那个肾啊
2009-03-25 · 超过19用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:0
展开全部
第一行定义了T=10,同理第二行定义 MD=3*T 即是3*10
输出30/3*10=10*10=100
第二题:首先x++是x先自加1,再在以后的语句中使用,而y--是以后使用y时才自减1,多以最后结果是1和3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
PolarisWatcher
2009-03-25 · TA获得超过1331个赞
知道小有建树答主
回答量:615
采纳率:0%
帮助的人:603万
展开全部
30/3*10=10*10=100.

y--表示y的值先赋好,再减、
++x表示x的值先加好,再赋值。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式