目录
10. if(m==1)m=2{}等价于if(m==1){m=2}
1.什么是C语言?
C语言是人和计算机交流的一种语言
2.为什么要学习C语言
C语言优点:代码量小
执行速度快
功能强大
编程自由
缺点:写代码实现周期长
可移植性较差
过于自由,经验不足易出错
对平台库依赖较多
3. .dll文件:动态库文件
- C语言仅有32个关键字,9个控制语句,34种运算符
- 为什么学习其他语言要先学习C语言
- 学习编程,要先学习面向过程的语言,再学面向对象的语言,C语言是面向过程的语言
- C语言的发展史:机器语言—>汇编语言—>高级语言
4.注释:
- //行注释
- /是一块注释,可以注释多行,注释内容不参与程序编译/
5. C语言代码%后面各字符不同含义
- %d 读入十进制整数
- %f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。
- %lf:指填入double类型数值
- %lu表示输出无符号长整型整数 (long unsigned)
- %a,%A 读入一个浮点值(仅C99有效)
- %c 读入一个字符
- %i 读入十进制,八进制,十六进制整数
- %o 读入八进制整数
- %x,%X 读入十六进制整数
- %s 读入一个字符串,遇空格、制表符或换行符结束
- %p 读入一个指针
- %u 读入一个无符号十进制整数
- %n 至此已读入值的等价字符数
- %[] 扫描字符集合
- %% 读%符号
- 转义字符:
- \n:表示输出完换行
- \b:退格
- \\:反斜杠
6. system函数
system函数的使用
#include <stdlib.h>
#include <stdio.h>
int main(){
//cmd命令:calc 计算机,notepad 记事本 , mspaint 画图板
//system可以打开一个外部应用程序,如果带路径,那么\为\\ 或者使用一个/
//system("C:\\QQ音乐\\tencent\\QQ\\Bin\\QQ.exe");
system("calc");
return 0;
}
7. cmd命令
calc:计算器
mspaint:画图
notepad:记事本
8.C语言编译过程
- C程序编译步骤:
- 1.预处理:宏定义展开、头文件展开、条件编译,去掉注释,这里并不会检查语法
- 2.编译:检查语法,将预处理后文件编译生成汇编文件
- 3.汇编:将汇编语言转成机器语言(二进制)
- 4.链接:C语言写的
9. 头文件stdlib.h
- 动态内存分配:stdlib.h中的函数可以用于动态分配内存,例如malloc()、calloc()和realloc()函数。
- 随机数生成:stdlib.h中的函数可以用于生成随机数,例如rand()和srand()函数。
- 环境控制:stdlib.h中的函数可以用于控制程序的环境,例如system()函数可以执行系统命令。
- 字符串转换:stdlib.h中的函数可以用于字符串和数字之间的转换,例如atoi()、atof()和itoa()函数。
- 排序和搜索:stdlib.h中的函数可以用于排序和搜索算法,例如qsort()和bsearch()函数。
- 流程图
10. if(m==1)m=2{}等价于if(m==1){m=2}
11.变量和常量
11.1关键字
- C的关键字共有32个
- 数据类型关键字(12个)
char、short、int、long、float、double、unsigned(无符号)、signed、struct(定义结构体)、union、enum(定义枚举)、void(空类型) - 控制语句关键字(12个)
if,else,switch,case,default,for,do,while,break,continue,goto,return - 存储类关键字(5个)
auto、extern、register、static、const - 其他关键字(3个)
sizeof、typedef、volatile
- 数据类型关键字(12个)
11.2数据类型
- 分为基本类型,构造类型,指针类型
- 基本类型
- 整型:int、short、long
- 字符型:char
- 实型(浮点型)
- 单精度类型:float
- 双精度类型:double
- 构造类型
- 数组类型
- 结构类型:struct
- 联合类型:union
- 枚举类型:enum
- 指针类型:(char *、int *、int **等)
- 基本类型
11.3常量与变量
常量(只读变量):在程序运行过程中,其值不能发生改变的量,成为常量
变量:在程序运行过程中,其值可以发生改变的量,称为变量
圆的面积和周长
#include <stdio.h>
int main(){
float pi=3.14159;
float r=3;
float s=pi*r*r;
float c=2*pi*r;
//圆的面积 s=pi*r*r
//圆的周长 c=2*pi*r
printf("圆的面积=%f\n",s);
printf("圆的周长=%f\n",c);
return 0;
}
输出结果:
5尺7寸:
#include <stdio.h>
int main(){
//身高5尺7寸:(5+7除÷ 12)乘x0.3048=1.7018米
printf("请分别输入身高的英尺和英寸:");
int foot;
int inch;
scanf("%d %d",&foot,&inch);
printf("身高是%f米。\n",((foot+inch/12.0)*0.3048));
return 0;
}
11.4表达式
表达式是一系列运算符和算子的组合,用来计算一个值
运算符:指进行运算的动作,比如: 加法运算符"+",减法运算符"-"
算子:指参与运算的值,这个值可能是常数,可能是变量,也可能是一个方法的返回值
计算时间差
#include <stdio.h>
int main(){
//计算时间差
int hour1,minute1;
int hour2,minute2;
scanf("%d %d\n",&hour1,&minute1);
scanf("%d %d",&hour2,&minute2);
int t1=hour1*60+minute1;
int t2=hour2*60+minute2;
int t=t2-t1;
printf("%d:%d和%d:%d相差了%d时%d分。",hour1,minute1,hour2,minute2,t/60,t%60);
return 0;
}
输出结果: