【context】
(一)顺序结构
- C语言规定标识符只能由字母、数字、下划线 3种字符组成,且第一个字符必须为字母或下划线。
- 小写字符的ASCII码=大写字符ASCII码+32
- 标准输入输出函数:putchar(输出一个字符) getchar(输入一个字符) printf(格式输出) scanf(格式输入) puts(输出字符串)gets(输入字符串)
- 格式字符:d——用来输出十进制整数。(①%d,整型数据的实际长度输出。
②%md,m为指定的输出数据的域宽。③%ld,输出长整型数据。)c——用来输出一个字符。(空格字符和转义字符都作为有效字符输出。) s——用来输出一个字符串。f——用来输出实数(包括单双精度)以小数形式输出。(①%f基本型,实数的整数部分全部输出,小数部分输出6位。②指定数据宽度和小数位数,右对齐用%m.nf,即数据占m列,有n位小数;左对齐%-m.nf,数据长度不超过m时,数据向左靠,右端补空格。) e——以指数形式输出实数。 o——以八进制整型式输出整数。 x——以十六进制形式输出整数。 u——用来输出unsigned型数据,即无符号数,以十进制形式输出。
(二)选择结构
If语句
①if语句
If(表达式)判断语句
【注】执行if语句时先判断表达式的值,若为非0(即真),则方可执行下一条语句。当有多个语句时,需要用{}把复合语句包含起来。
②if…else语句
If(表达式)
语句1
Else
语句2
【注】else语句省略时就是简单的if语句;
else子句不是独立的一个语句,是if语句的一部分必须与if配对使用,且else与离它最近的if配对。
③if…else if…语句
If(表达式1)
语句1
Else if(表达式2)
语句2
……
Else if(表达式n)
语句n
Else
语句n+1
【注】依次计算表达式,若表达式为非0,则执行对应语句,若表达式为0,则执行语句n+1。
Switch语句
Switch(测试表达式)
{
Case 常量表达式1:语句1;
Case 常量表达式2:语句2;
……
Case常量表达式n:语句n;
Default: 语句n+1;
}
【注】测试表达式的值只能是整型或字符型;
常量表达式通常是整形常量或字符常量;
Case与常量表达式之间必须用空格隔开;
如果case都不满足,则执行default语句,可以没有default语句,若此时没有与Switch表达式匹配的case常量,则不执行任何语句,直接转至下一个语句;
系统自动识别并顺序执行所有语句,连续输出。可借用break语句(间断语句)跳出循环,使Switch语句真正起到分支的作用。
(三)循环结构
While循环(当型循环)
While(表达式)判断语句
{
循环体语句
}
【注】先判断再执行。
For循环(当型循环)
For(表达式1;表达式2;表达式3) //for(循环变量赋初值;循环条件;循环变量增值)
{
循环体语句
}
【注】初始条件仅执行一次。
Do…while循环(直到型循环)
Do
{
循环体结构语句
}while(表达式);
【注】在分支和循环结构的表达式中注意关系运算符:判断是否等于要用==,若出现=则是赋值语句。
break 与 continue
continue(只结束本次循环)
即在本次循环中continue后面的代码不执行(不输出数据),进入下一次循环的入口判断。
break (强行退出循环)
即中断当前循环。