数据结构 C语言核心操作集合

(1)预定义常量和类型
//函数结果状态代码
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define INFEASIBLE -1
#define OVERFLOW -2
//Status 是函数的类型,其值是函数结果状态代码
typedef int Status;


(2)数据结构的表示(存储结构)用类型定义(typedef)描述.
数据元素类型约定为ElemType,由用户在使用该数据类型时自行定义.

(3)基本操作的算法都用以下形式的函数描述:
函数类型 函数名(函数参数表){
//算法说明
语句序列;
}//函数名

void

除了函数的参数需要说明类型外,算法中使用的辅助变量可以不作变量说明.必要时对其作用给予注释.
一般而言,a,b,c,d,e等用作数据元素名,
i,j,k,l,m,n等用作整型变量名,p,q,r用作指针变量名.
当函数返回值为函数结果状态代码时,函数定义为Status类型.为了便于算法描述,除了值调用方式外,
增添了C++语言的引用调用的参数传递方式.在形参表中,以&开头的参数即为引用参数


(4)赋值语句
简单赋值 变量名 = 表达式;
串联赋值 变量名1 = 变量名2 = ... = 变量名k = 表达式;
成组赋值 (变量名1,..,变量名k) = (表达式1,..,表达式k);
结构名 = 结构名;
结构名 = (值1,...,值k);
变量名[] = 表达式:
变量名[起始下标..终止下标] = 变量名[起始下标..终止下标];
交换赋值 变量名<-->变量名;
条件赋值 变量名 = 条件表达式 ? 表达式T : 表达式F;


(5)选择语句有
条件语句1: if (表达式) 语句;
条件语句2: if (表达式) 语句;
else 语句;
开关语句1: switch (表达式){
case 值1: 语句序列1: break;
case 值2: 语句序列2: break;
...
case 值n: 语句序列n; break;
default: 语句序列n+1;
}

开关语句2: switch {
case 条件1: 语句序列1; break;
...
case 条件n: 语句序列n; break;
default:语句序列n+1;
}



(6) 循环语句有:
for语句
for (赋初值表达式序列; 条件; 修改表达式序列)
语句;

while 语句
while (条件)语句;

do-while 语句
do {
语句序列;
} while(条件);


(7) 结束语句有:
函数结束语句 return 表达式;
case结束语句 break;
异常结束语句 exit(异常代码);


(8)输入和输出语句
输入语句: scanf([格式串],变量1,...,变量n);
cin >> ;
输出语句: printf([格式串],表达式1,...,表达式n);
cout << ;
通常省略格式串

(9)注释语句
单行注释
语句 //文字序列
多行注释
/*
语句1;
语句2;
*/

(10)基本函数有以下:
求最大值 max(表达式1,...,表达式n);
求最小值 min(表达式1,...,表达式n);
求绝对值 abs(表达式);
求不足整数值 floor(表达式);
求进位整数值 ceil(表达式);
判定文件结束 eof(文件变量) 或 eof
判断行结束 eoln(文件变量) 或 eoln


(11)逻辑判断约定
与运算 && : 对于A&&B,当A的值为0时,不再对B求值
或运算 || : 对于A||B,当A的值为非0时,不再对B求值

Talk is cheap. Show me the code