C语言问题

[复制链接]
查看11 | 回复4 | 2010-7-19 20:06:09 | 显示全部楼层 |阅读模式
#define price 30
#include "stdio.h"
void main()
{
int num,total;
num=100;
total=num * price;
printf("total=%d\n",total);

}
书上说price是个符号常量为30?那为什么我写成10 答案就是1000 还有最后句话printf("total=%d\n",total); 这个代表什么意思啊

回复

使用道具 举报

千问 | 2010-7-19 20:06:09 | 显示全部楼层
就相当于在price出现的地方换成30。你改成10后就换成10。因此total=num*30。printf("total=%d\n",total);是输出语句,输出来“total=”然后是total的值“3000”,“%d”是格式控制符,对应total是int型数据。然后“\n”是换行号。
回复

使用道具 举报

千问 | 2010-7-19 20:06:09 | 显示全部楼层
当你#define price 30的时候它就是30,当你#define price 10的时候它就是10,是看你自己来定义的。printf输出的引号里面基本不变,就是%d用后面total变量的值替代了。
回复

使用道具 举报

千问 | 2010-7-19 20:06:09 | 显示全部楼层
这个程序是简单的乘法计算,相当于,你买东西,买的数量是num,而define的内容是价格price,total是总价格。
回复

使用道具 举报

千问 | 2010-7-19 20:06:09 | 显示全部楼层
total=num * price;这句话是把num和price相乘num在上一句已经赋值成了100,price写成10就是10*100,当然就是1000.printf("total=%d\n",total);是调用printf函数进行输出.printf里边的%d意思是第二个参数是十进制形式的整数,\n的意思是回车.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行