刚开始学c语言有点小问题
答案#include <stdio.h>#define FANQIE3.7
#define JIELAN7
#define XIQIN 1.3
#define KONGXINCAI 8
#define YANGCONG 2.4
#define YOUCAI9
#define HUANGGUA 6.3
#define BAILUOBO 0.5
int main()
{
float price;
price = (2 * FANQIE + KONGXINCAI + YOUCAI) * 0.5; // 1斤 == 0.5公斤
printf("小明需要支付%.2f元\n", price);
price = (3 * XIQIN + 0.5 * YANGCONG + 5 * HUANGGUA) * 0.5;
printf("小红需要支付%.2f元\n", price);
price = (10 * HUANGGUA + 20 * BAILUOBO) * 0.5;
printf("小甲鱼需要支付%.2f元\n", price);
return 0;
}
我的int main()
{
float price;
price = ("2 * %s + %s + %s\n ", fanqie, kongxincai, youcai);
return 0 ;
}
上面那个float price是什么意思有什么用?还有为什么我的就跑不出不对? 本帖最后由 jackz007 于 2019-9-26 00:39 编辑
float price ; 这一句声明 price 是一个浮点型变量;
#define FANQIE3.7
#define JIELAN7
#define XIQIN 1.3
#define KONGXINCAI 8
#define YANGCONG 2.4
#define YOUCAI9
#define HUANGGUA 6.3
#define BAILUOBO 0.5
这些定义的是宏,是用来要求编译程序,只要在代码中出现 define 后面的文本,就用这个文本后面的数字替换这些文本。
例如:
price = (2 * FANQIE + KONGXINCAI + YOUCAI) * 0.5;
这一句会在预编译阶段,先被修改成下面的形式,然后才开始实际编译:
price = (2 * 3.7 + 8 + 9) * 0.5;
在楼主写的代码中,唯一一句代码不知道遵循的是什么语言,也不知道想干啥,完全不知道如何着手去修改。
price = ("2 * %s + %s + %s\n ", fanqie, kongxincai, youcai);
恕在下才疏学浅!!!
页:
[1]