主函数
一个C程序有且只有一个主函数,即main函数。主函数是C语言中的唯一入口,C程序就是执行主函数里的代码。
#include <stdio.h>
int main() {
printf("First C ");
return 0;
}
#include
是预处理指定,用于包含指定文件(在编译前处理),把对应文件复制到指定位置,包含任何类型的文件。
#include
包含文件时有两种方式,使用<>
和""
,<>
包含只会查账编译器库函数文件,适用于包含库函数;""
包含首先查找程序当前目录,没找到则查找库函数路径,适用于自定义文件。
C程序一定是从主函数开始执行的。
基本数据类型
数据类型
- 整型(int):没有小数的数字,格式符:%d
- 字符型(char):存储单个字符,格式符:%c
- 浮点型:有小数的数字,单精度(float),双精度(double),格式符:%f-6位小数,%e-科学计数法
%o,以不带符号八进制输出整数
%x,以不带符号十六进制输出整数
C语言不存在字符串变量,字符串只能存在字符数组中。
//格式化输出
int main(int argc, const char * argv[]) {
// insert code here...
printf("Hello, World!\n");
int age = 23;
float height = 180.3;
char sex = 'M';
printf("age:%d,height:%.2f,sex:%c \n",age,height,sex);
return 0;
}
类型修饰符
short 短型,修饰int、double
long 长型,修饰int、double
signed 有符号型,修饰int、char
unsigned 无符号型,修饰int、char
运算符
1、算术运算符
- 加法:+
- 减法:-
- 乘法:*
- 除法:/
- 求余(模):%
- 自增:++
- 自减:--
#include <stdio.h>
int main()
{
int x = 10;
int y = 2;
printf("x+y=%d\n",x+y);
printf("x-y=%d\n",x-y);
printf("x*y=%d\n",x*y);
printf("x/y=%d\n",x/y);
x--;
printf("x--:%d\n",x);
x++;
printf("x++:%d\n",x);
printf("x%%y=%d\n",x%y);//打印% -%%
return 0;
}
- 自增的两种表达式:a++,++a,都等同于a=a+1,表达式执行完毕后,a的值都增加了1。但是两种表达方式的运算规则不同,++a表达式,先运算再取值,而a++表达式则是先取值后运算。只是针对表达式的值,与a本身的值没有影响。
int a = 10;
printf("a ++ :%d \n",a++);
printf("a:%d \n",a);
int b = 10;
printf("b ++ :%d \n",++b);
printf("b :%d,\n",b);
打印结果:
a ++ :10
a:11
b ++ :11
b :11
2、赋值运算符:=
- 简单赋值运算符:=
- 符合赋值运算符:在简单赋值运算符前面加上其他运算符构成如:+=,-=,*=,/=,%=
3、关系运算符
- 大于: >
- 大于等于:>=
- 小于: <
- 小于等于:<=
- 等于: ==
- 不等于: !=
关系表达式的结果只是“真”和“假”,用1和0表示。
4、逻辑运算符
- 逻辑与:&&,参与运算两个变量都为真时,结果才能为真,并且,如果前一个变量为假,不会验证后面的变量
- 逻辑或:||,参与运算两个变量只要有一个为真时,结果为真,否则结果为假。并且,只要第一个变量为真,不会验证后面的变量。
- 逻辑非:!,参与运算变量为真时,结果为假,参与变量为假时,结果为真。
逻辑运算符的结果只是“真”和“假”,用1和0表示。
5、三目运算符
- 格式:表达式1 ? 表达式2 : 表达式3;
判断表达式1是否为真,真执行表达式2,假执行表达式3。
一般用三目运算解决一些简单的判断,替代if-else,更简洁。
6、运算符优先级
C语言中运算符最高等级是()
,很多时候都会用到它来解决顺序问题。