编写第一个C语言程序

C语言程序开发运行流程:编写代码、编译代码、运行代码

C_1

1
2
3
4
5
6
#include <stdio.h> //头文件
int main() //主函数
{
printf("Hello World");
return 0;
}

数据类型

基本数据类型

类型 关键字 举例 所占字节 范围
整型 整型 int 10、-10、1314、-1314、0 4 -2147483648~2147483647
短整型 short 2 -32768~32767
长整型 long 8 -9223372036854775808~9223372036854775807
长长整型 long long 8或16
浮点型 单精度型 float 3.14、13.14 4 -3.4e38~3.4e38(科学记数法)
双精度型 double 8 -1.7e308~1.7e308
字符类型 字符类型 char ‘A’、’a’、66 1 0~255(0-127,128-255)

ASCII字符

C_3

C_4

转义字符

转义字符 解释
\n 换行符,表示光标移到下一行的开头
\0 空字符,没有任何内容,字符串的结束标志
\r 回车符,表示光标移到当前行的开头
\t 制表符,相当于tab键,跳8个空
' 用于表示字符常量’
'‘ 用于表示一个字符串内部的双引号
\ 用于表示一个反斜杠,防止它被解释为转义字符
\b 退格符
\f 换页符
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <stdio.h>
int main()
{
printf("%d,%u\n",0xFFFFFFFF,0xFFFFFFFF);//%d有符号数,%u无符号数,无符号数基本整型
printf("%d,%d\n",0x80000000,0x7FFFFFFF);

printf("sizeof(short):%lu\n",sizeof(short));//%lu无符号长整数,sizeof 计算给定的类型占用多少字节
printf("sizeof(int):%lu\n",sizeof(int));
printf("sizeof(long):%lu\n",sizeof(long));
printf("sizeof(long long):%lu\n",sizeof(long long));

printf("sizeof(float):%lu\n",sizeof(float));
printf("sizeof(double):%lu\n",sizeof(double));

printf("8.4/2.0=%f\n",8.4/2.0);//%f输出单精度小数用的占位符,默认小数点后6位
printf("8.4/2.0=%.1f\n",8.4/2.0);//.1表示小数点后保留1位
printf("8.4/2.0=%g\n",8.4/2.0);//%g输出自动选择小数点后的位数
printf("8.4/2.0=%e\n",8.4/2.0);//%e输出科学计数法
printf("12.12=%e\n",12.12);
printf("8.4/2.0=%lf\n",8.4/2.0);//%lf输出双精度小数

//单精度和双精度的区别
float f = 897.33245876546789;//单精度浮点数变量f
double d = 897.33245876546789;//双精度浮点数变量d
printf("%.14f\n",f); //精度只有位
printf("%.14lf\n",d);//精度16位左右

printf("%c\n",'A');//%c输出char类型字符
printf("%c\n",66); //B
printf("%c\n",'A'+32);

printf("%d\n",'A');//ascii编号
printf("%c\n",'0');//字符0
printf("%d\n",'0');//字符0的ascii编号48
printf("%d\n",0);//数值0
printf("|%c|\n",0);//ascii码是0的字符,空字符,什么也不显示
printf("|%c|\n",32);//ascii码是32的字符是空格

printf("%d\n",20);//十进制。%d表示十进制整数 占位符/格式字符串
printf("%X\n",10);//十六进制A-F
printf("%x\n",10);//十六进制a-f
printf("%o\n",20);//八进制
printf("%f\n",3.14);//单精度浮点数
printf("%lf\n",3.141592653);//双精度浮点数
printf("%c\n",'A');//字符
printf("%c\n",65);//ASCII码
printf("%c\n",98);//ASCII码
printf("%d\n",98);//十进制整数

printf("%d\n",0x41);//把十六进制数0x41转换成十进制整数打印出来
printf("%c\n",0x41);//把十六进制数0x41转换成字符打印出来
printf("%c\n",0101);//把八进制数101转换成字符打印出来

return 0;
}

变量

变量的定义格式

数据类型 变量名 = 数据值 ;

变量名的命名规则:由字母、数字、下划线组成,
但不能以数字开头,不能使用关键字。也就是标识符的命名规则。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
int main()
{
float num1 = 3.14; // float类型变量num1
double num2 = 1.2345; // double类型变量num2
// 打印结果
printf("num1: %f\n", num1);
printf("num2: %lf\n", num2);

num1 = 20.14;//改变了变量的值
num2 = 100.2357; //改变了变量的值

printf("num1: %.2f\n", num1);// 保留小数点后两位
printf("num2: |%10.2lf|\n", num2);// 保留小数点后两位,宽度为10, 右对齐
printf("num2: |%-10.2lf|\n", num2);// 保留小数点后两位,宽度为10,左对齐
return 0;
}

常量

常量类型 说明 举例
字面常量 直接写在代码中的固定数值 10、3.14、’A’、“Hello”
符号常量 通过宏定义指令定义的,用来代表一个固定的数值或字符串 通过 #define PI 3.14159 定义了一个符号常量 PI,可以在程序中多次使用 PI 来表示圆周率;

注释

1
2
3
4
5
6
7
8
//单行注释

/*
多行注释
多行注释
多行注释
*/