第三章 顺序结构程序设计<br>
C语言的语句
表达式语句
由表达式加上分号“;”
格式为:表达式;
分支语句
分支语句实现分支控制过程,根据条件成立与否执行不同的语句
循环语句<br>
有for语句、while语句和do-while语句<br>
转向语句<br>
break、goto、continue、return语句
复合语句
用一对大括号{ }将若干语句顺序组合在一起所形成的的语句称为复合语句
函数定义与调用
函数是完成特定功能小模块,是C语言中唯一的种子程序,常常在一个C程序中包含若干个函数,复杂的任务通过调用这些函数来完成
输入和输出
C语言没有提供用于数据输入及输出的语句所有的输入和输出都是通过系统提供的有关函数 如:scanf()和printf()来实现的<br>
数据的输入和输出
输出函数(printf())和输入函数(scanf())
printf()函数
格式为:printf(“格式控制字符串”,输出项表列)
普通字符<br>
在输出数据时,需要原样输出的字符
scanf()函数
格式为:scanf(“格式控制字符串”,输出项表列)
整型数据的输入和输出
实型数据的输入和输出
字符型数据的输入和输出
使用scanf()函数和printf()函数对字符型数据进行输入输出
使用getchar()函数和putchar()函数对字符数据进行输入输出
数学库函数
指数函数exp(x)
绝对值函数fabs(x)
以e为底的对数函数log(x)<br>
幂函数pow(x,y)
平方根函数sqrt(x)
调用数学库函数时,一定要在开头使用#include<math.h>
第四章 分支结构程序设计<br>
关系运算符、逻辑运算符、条件运算符
关系运算符和关系表达式
关系运算符
关系运算符用于判断两个操作数的大小关系
关系运算符都是双目运算符
关系运算符的优先级低于算数运算符,但是高于赋值运算符
关系运算符中,>、<、>=、<=的优先级相同,==、!=的优先级相同,前者的优先级高于后者,即“>=”的优先级高于“==”。<br>
关系表达式
用关系运算符将两个表达式连接起来的式子称为关系表达式。
关系表达式的一般形式为:表达式1 关系运算符 表达式2
功能:比较两个表达式 的大小,并返回一个逻辑值<br>
逻辑运算符和逻辑表达式
逻辑运算符<br>
与预算符&&和或运算符||都是双目运算符,非运算符!为单目运算符
用逻辑运算符将两个表达式连接起来的式子称为逻辑表达式
一般形式为:表达式 逻辑运算符 表达式 或逻辑运算符 表达式<br>
条件运算符和条件表达式
条件运算符
条件运算符由“?”和“:”两个符号组成,用于条件求值,它是一个三目运算符,需要三个操作数。条件运算符的优先级低于逻辑运算符、高于赋值运算符,它是右结合的。
条件表达式
其形式为:表达式?表达式:表达式
条件表达式允许嵌套
条件表达式中表达式的类型可以不同 ,系统会自动进行转换。结果为表达式2和表达式3中级别类型较高的,并将其作为条件表达式的类型;
使用if-else实现分支结构
if—else语句
双分支if语句<br>
一般形式为: if(表达式)语句1;else 语句2;<br>
if语句的嵌套
if语句的基本形式为: if(表达式)语句1;else 语句2;<br>
嵌套形式为:if(表达式1)if(表达式2)语句1;else 语句2;else if(表达式3)语句3;else 语句4;<br>
else总是与它前面最近的一个未匹配的if相匹配
多分支if语句
一般形式为:if(表达式1)语句1;else if(表达式2) 语句2;....else if(表达式n-1) 语句n-1; else 语句n;<br>
使用Switch语句实现分支结构
Switch语句的一般形式为:Switch(表达式){case 常量表达式1:语句1;break;case 常量表达式2:语句2;break;...case 常量表达式n:语句n;break; default:语句n+1;break;}
Switch厚度表达式可以是任何表达式,其值只能为整型、字符型、枚举型
每个case后面的常量表达式的值互不相同,否则就会出现互相矛盾的现象
各个case和default的出现次序不影响执行结果
可以让多个case共用一组 执行语句<br>
Switch语句允许嵌套使用
在Switch语句格式中的部分语句后面使用break语句<br>
由于可以让多个case共用一组执行语句,这在解决某些问题时很有用<br>
在Switch语句格式中不使用break语句<br>
程序在执行相应语句后,不会跳出正在执行的Switch语句,而会执行其后的所有语句。
第五章 循环结构程序设计<br>
使用for语句实现循环结构
for语句的基本语法<br>
一般形式为:for(表达式1;表达式2;表达式3) 循环体语句;
可以应用于计数型的循环
for语句的一般形式中省略表达式1
格式为<br><br> for(;表达式2;表达式3)<br><br> 循环体语句;
for语句的一般形式中省略表达式2
格式为:<br><br> for(表达式1;;表达式3)<br><br> 循环体语句:
for语句的一般形式中省略表达式3
格式为:<br><br> for(表达式1;表达式2;)<br><br> 循环语句:
for语句的一般形式中表达式1和表达式3也可以是逗号表达式
for语句的一般形式中表达式2的值只要非0,就执行循环体
for语句的一般形式中循环体语句可以省略
使用while语句实现循环结构
while语句的基本语法
while语句在使用时,总是先判断一个条件,所以可以用while语句实现“当型”循环。while的一般形式如下:<br><br>while(表达式)<br><br> 循环体
循环语句可以是复合语句,即当循环体由多条语句构成时,必须用一对大括号将这些语句括起来,形成复合语句
使用do—while语句实现循环结构
do-while语句在使用时,首先执行循环体语句,然后再判断条件<br><br>一般形式为<br><br>do<br><br> 循环体<br><br>while(表达式);
在do之后不能有语句结束符“;”,因为该语句还没有结束<br>
在while(表达式)之后必须有语句结束符“;”,因为do—while语句到此结束
在循环体中必须有改变循环条件的语句,否则会出现死循环
改变循环结构的跳转语句<br>
break语句<br><br>满足条件便跳出循环<br><br>一般形式为<br><br> break;
continue语句<br><br>continue语句的作用是跳过循环体中continue后面的语句,继续下一次循环。continue语句只能用在循环语句中,常和if语句使用<br><br>continue语句的一般形式为<br><br> continue<br>
goto语句<br><br>goto语句的一般形式为<br><br>goto 语句标号;<br><br>语句标号是一个有效的标识符,使用时在语句标号的后面跟一个“:”出现在函数中某语句的前面。程序执行到goto语句时,会控制跳转到该语句标号处达到控制循环的目的。
循环嵌套
外循环执行一次,内循环要执行一轮。即外循环执行一次,内循环一直要循环到条件不满足 为一轮;在执行外循环一次,内循环又一直执行到条件不满足时为第二轮;如此重复执行,指导外循环条件不满足时,整个循环嵌套结束<br>
循环嵌套格式中的内外循环体不允许出现交叉,即外循环要完全包含内循环
循环嵌套时,内循环体中使用break语句和continue语句时,只影响包含他们的内循环,与外循环无关