【C基础篇】算法、数据类型、运算符与表达式、常见输入出函数
引言
- 算法:熟悉算法概念、算法的描述;
- 数据类型:学习C语言最基础的语法知识、认识变量、常量和数据类型;
- 运算符和表达式:掌握各种运算符、表达式、优先级结合性等内容。
一、算法
1、算法的基本概念
算法是为解决某一特定类型的问题而制定的一个实现过程,具有下列特性:
- 有穷性:执行步骤有穷、执行时间有穷,不能无限执行;
- 确定性:每个步骤都有确切定义;
- 可行性:每一步都能有效运行;
- 输入:一个算法应有零个或多个输入;
- 输出:一个算法应有一个或多个输出。
衡量一个算法的好坏,通常从以下几个方面来分析
- 正确性
- 可读性
- 健壮性
- 时间复杂度和空间复杂度
时间复杂度:算法运行所需的时间;
空间复杂度:算法运行时所需的存储空间的大小。
二、数据类型
1、关键字
关键字是C语言规定的具有特定意义的字符串。用户定义的常量、变量、函数等名称不能与关键字相同。
关键字 | 描述 | 关键字 | 描述 |
---|---|---|---|
auto | 声明自动变量 | break | 跳出当前循环 |
case | 开关语句分支 | char | 声明字符型变量或函数 |
const | 限定变量不被改变 | continue | 结束当前循环,开始下一轮循环 |
default | 开关语句其他分支返回语句 | do | 循环语句的循环体 |
double | 声明双精度变量或函数 | else | 条件语句否定分支 |
enum | 声明枚举类型 | extern | 存储类声明修饰符 |
float | 声明浮点型变量或函数 | for | 循环语句 |
goto | 无条件跳转语句 | while | 循环语句的循环条件 |
int | 声明整型变量或函数 | long | 声明长整型变量或函数 |
register | 声明寄存器变量 | union | 声明共用体数据类型 |
short | 声明短整型变量或函数 | signed | 声明有符号型变量或函数 |
sizeof | 计算数据类型长度 | static | 声明静态变量 |
struct | 声明结构体变量或函数 | switch | 用于开关语句 |
typedef | 用于给数据类型取别名 | return | 返回语句 |
unsigned | 声明无符号型变量或函数 | void | 声明函数无返回值或无参数,声明无指针类型 |
volatile | 说明变量在程序执行中可被隐含地改变 | if | 条件语句 |
利用extern关键字。可以在一个文件中引用另一个文件中定义的变量或函数
2、标识符
标识符基本命名规则:
- 必须以字母或下划线开头,不能以数字或符号开头;
- 除开头外的其他字符可以由字母、下划线或数字组成;
- 大写和小写的字母代表不同的标识符;
- 标识符不能是关键字;
- 标识符应体现一定的功能含义,便于理解;
3、数据类型
C语言中的数据类型包括:基本类型、构造类型、指针类型和空类型等。
4、变量的存储类别
auto
作用为定义一个局部变量为自动变量,该变量存储于内存的动态存储区中,每次执行到该变量定义语句时,都会产生一个新的变量,并且对其初始化。
#include<stdio.h>
void add()
{
auto int a = 1;
a = a + 1;
printf("%d\n"