一、常量和符号常量
常量: 在程序执行过程中,其值不发生改变的量称为常量。
符号常量: 用标识符代表一个常量。在C语言中,可以用一个标识符来表示一个常量。
符号常量在使用之前必须先定义,其一般形式如下:
#define 标识符 常量
PS: 1、#define也是一条预处理命令(预处理命令都以”#“开头),称为宏定义命令。
2、习惯上符号常量的标识符(名字)用大写的字母,变量标识符用小写字母。
代码:
#include<stdio.h>
#define PRICE 30;
void main()
{
int num,total;
num = 10;
total = num * PRICE;
printf("total = %d\n",total);
}
输出结果:
PRICE 就是符号常量。
二、变量
2、整型变量的分类
例如:
代码:
#include<stdio.h>
void main()
{
printf("%d个字节\n",sizeof(int));
}
输出:
三、简单的加法运算
代码:
#include<stdio.h>
void main()
{
int a,b,c,d;
unsigned u;
a = 12;b=16;u=10;
c = a+u;
d = b+u;
printf("a+u=%d,b+u;=%d\n",c,d);
}
输出:
PS:%d 以为形式输出。对应的是引号后面真实的数据。若有两个 %d,则与后面的真实的数据一一对应。
四、补码
第一位为符号位。0就是正,1就是负。
五、整型数据的溢出
代码:
#include<stdio.h>
void main()
{
short int a,b;
a = 32767;
b = a+1;
printf("%d,%d\n",a,b);
}
输出结果:
-32768的求法:先写出对应的补码—>01111111 。其中0代表正号。
六、实型数据的舍入误差
代码:
#include<stdio.h>
void main()
{
float a,b;
a = 123456.789e5;
b = a + 20;
printf("%f\n",a);
printf("%f\n",b);
}
PS: 123456.789e5 —> 123456.789*10^5
输出结果:
数字太大,float存储不了,所以后面的数字就不精确。
七、字符型数据
1、字符常量
2、字符变量
3、转义字符
常用的转义字符表:
字符数据在内存中的存储形式及使用方法:
例如:
#include<stdio.h>
void main(){
char a,b;
a = 'x';
b = 'y';
printf("%c,%c\n",a,b);
printf("%d,%d\n",a,b);
}
输出:
PS:%d表示输出整形;%f表示输出浮点型(float);%c表示输出字符型(char)。
知识点:根据ASCII表可知大写和小写的编号相差32位。
转化:小写—>大写。
#include<stdio.h>
void main(){
char a,b;
a = 'a';
b = 'b';
a=a-32;
b=b-32;
printf("%c,%c\n%d,%d\n",a,b,a,b);
}
八、字符常量和字符串常量
char =“a” 其实存储的是: a\0
例如:
对应的‘’C progra‘’都是以0和1存放。要提前则再转化为对应的ASCII表里的值
九、逻辑思维
#include<stdio.h>
void main(){
int i=5,j=5,p,q;
p = (i++)+(i++)+(i++);
q = (++j)+(++j)+(++j);
printf("%d,%d,%d,%d\n",p,q,i,j);
}
输出:
十、逗号运算符
#include<stdio.h>
void main()
{
int a =2,b =4, c =6,x,y;
y=((x=a+b),(b+c));
printf("y=%d,x=%d\n",y,x);
}
y=((表达式1),(表达式2),(表达式3)…(表达式n)); 则y取表达式n