|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 hxliu 于 2017-7-11 15:06 编辑
S1E5
1、C语言中常见的常量有:整型常量、实型常量、字符常量(普通字符和转义字符)、字符串常量、符号常量(需要定义)。
2、定义符号常量(宏定义)格式:#define 标识符 常量
tips:“#”开头的为预处理命令。#define为宏定义命令。
以鱼C工作室为例
- #include <stdio.h>
- #define URL "http://www.fishc.com"
- #define NAME "鱼C工作室"
- #define BOSS "小甲鱼"
- #define YEAR 2010
- #define MONTH 5
- #define DAY 20
- int main()
- {
- printf("%s成立于%d年%d月%d日\n",NAME,YEAR,MONTH,DAY);
- printf("%s是%s创立的。\n",NAME,BOSS);
- printf("%s的域名是:%s\n",NAME,URL);
-
- return 0;
- }
复制代码
3、C语言中的名字都称之为标识符。(如:符号常量名、变量名、函数、数组、自定义类型等名字)
4、使用空字符‘\0’表示字符串结束位置。
5、字符串"FishC"除了'F'、'i'、's'、'h'、'C',五个字符外还有一个'\0’表示结束。
6、宏定义是在程序编译时先进行的预处理,做法是直接将标识符替换成常量,并不进行相关运算。
此题F(3+2)直接替换为2*3+2,因此结果为8
做作业时遇到的问题:
双引号"\n",转换字符用了s
- #include <stdio.h>
- #define NL "\n"
- int main()
- {
- printf("Line1%s", NL);
- printf("Line2%s", NL);
- return 0;
- }
复制代码
规范的应该是单引号'\n'(双引号的话把换行符当字符串定义了0.0,所以用s的时候结果一样),转换字符用c
- #include <stdio.h>
- #define NL '\n'
- int main()
- {
- printf("Line1%c",NL);
- printf("Line2%c",NL);
-
- return 0;
- }
复制代码
另附作业代码:
①圆
- #include <stdio.h>
- #define PI 3.14159
- #define S(r) PI*r*r
- #define C(r) 2*PI*r
- int main()
- {
- int r = 5;
-
- printf("半径为%d的圆,面积是:%.2f,周长是:%.2f",r,S(r),C(r));
-
- return 0;
- }
复制代码
②买菜(为什么小甲鱼买那么多黄瓜萝卜。。。手动滑稽)
- #include <stdio.h>
- #define FQ 3.7
- #define JL 7
- #define XQ 1.3
- #define KXC 8
- #define YCo 2.4
- #define YCh 9
- #define HG 6.3
- #define BLB 0.5
- #define XM 1*FQ+0.5*KXC+0.5*YCh
- #define XH 1.5*XQ+0.25*YCo+2.5*HG
- #define FishC 5*HG+10*BLB
- int main()
- {
- printf("小明需要支付%.2f元\n",XM);
- printf("小红需要支付%.2f元\n",XH);
- printf("小甲鱼需要支付%.2f元\n",FishC);
-
- return 0;
- }
复制代码
写完后发现小甲鱼版买菜不一样啊,用了float函数啊啊啊(如下),待会认真看看~
- #include <stdio.h>
- #define FANQIE 3.7
- #define JIELAN 7
- #define XIQIN 1.3
- #define KONGXINCAI 8
- #define YANGCONG 2.4
- #define YOUCAI 9
- #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;
- }
复制代码
|
评分
-
查看全部评分
|