目录
一、Hello World
#include <stdio.h> //打开一个工具库
int main ()主函数
{
print("Hello World");
return 0 ; }
二、常量
1、整型常量
1,2,3...
2、实型常量
(1)十进制小数形式:由数字和小数组成
(2)指数形式:例如12.84e3指12.84的10的3次方(e指10)
3、字符常量
(1)普通字符常量:‘a' 'b'
(2)转义字符:'\n' 换行符、'\f' 换页符、'\t' 水平制表符、'\v' 垂直制表符、'\ ?' 问号、' \' ' 单引号、' \" ' 双引号、'\\' 斜杠、'\a' 警告声音提示、'\b' 退格删除符、'\r' 回车、'\o' 八进制形式、'\x'十六进制形式
4、字符串常量
"abcdf"
5、符号常量
#define定义 例如:#define xss 3.14(xss就表示3.14)
6、地址常量
在运行过程中不可变
三、变量
变量的定义:变量是指在程序运行期间其值可以发生改变的量。变量用于从外部接收数据,保存一些不断变化的值,保存中间结果及最终结果,而这些都无法用常量来实现。一个变量应该有一个名字即变量名,在内存中占据一定的存储单元,在该存储单元中存放变量的值。
在C语言中,所有的变量必须先定义后使用。
基本数据类型
1、整型int(占四字节)
2、字符型char
3、单精度浮点型float 精确到后6-7位(四字节)
4、双精度浮点型double 精确到后16-17位(八字节)
通过ASCCII码表进行转换
隐式转换:char ch = 'a';
ch = 65; //'A'
int a;
a = ch;
强制转换:char ch='a';
ch = (int)ch;
小数与整数转换:省略小数保留整数(不存在四舍五入)
四、数据的输入和输出
1、格式化输出
printf ("格式占位符" 变量)
格式占位符:将a数据以指定形式输出
类型 格式占位符
int %d
char %c
float %f
double %lf
例如:int a=10;
printf("%d\n" a); (同时输出多个时用逗号隔开)
注:一般输出小数仅展示后6位(printf("%.3f\n" a) ) 仅要小数点后三位
2、格式化输入
#include <stdio.h>
int main()
{int a = 10;
char b = 'b';
scanf("%d %c" &a,&b);
}
补:ch = getchar;从键盘获取一个字符(ch)
printf("-----------------\n");
puchar(ch); 再输出这个字符 或者puchar('m');
五、运算符
1、算术运算符
正号运算符+a 负号运算符-a 乘号a * 除号/ 除余% 加号+ 减号-
2、自加自减运算符
++:加1 --:减1
a++:先运算再加1
++a:先加1再运算
注意运算的优先级
3、关系运算符
>:大于
<:小于
>=:大于等于
<=:小于等于
==:等于
!=:不等于
4、逻辑运算符
逻辑与:&& (11级)(参与运算的两个量都为真,结果才为真)
逻辑或:|| (12级) (一个为真,结果就为真)
逻辑非:!(优先级2级)(参与运算量为真时,结果为假,反之亦然)
5、位运算符(二进制运算符)
左移:<< (移n位相当于乘以2的n次方)
右移:>> (移n位相当于除以2的n次方)
按位与:& (对应位置,都为1结果为1,否则为0)
按位或:| (对应位置,有1则为1,否则为0)
按位非:~ (取反码)
按位异或:^ (对应位置,相同为0,不同为1)
注:对应位置指数字的对应二进制
#include <stdio.h>
int main()
{
int a;
a = 20;printf("%d\n", a << 1);
return 0;
}
补:二进制原码反码补码
正数,反码和补码:不变
负数,反码:符号位不变且取反,补码:反码加1(二进制最高位表示符号位)
6、条件运算符
条件1?条件2:条件3
#include <stdio.h>
int main()
{int a = 10;
int b = 4;
a > b ? a = 11 : a = 10;
printf("%d\n", a);
}
7、逗号运算符
#include <stdio.h>
int main()
{int a=(1,2,3,4,5,6,9);
printf("%d\n",a);
return 0;
}
8、赋值运算符
=
+= (b=b+a)
-= (b=b-a)
/= (b=b/a)
%=(b=b%a)
#include <stdio.h>
int main()
{
int a=10;
int b = 2;
b %= a; //b=b%aprintf("%d\n", b );
return 0;
}