C语言程序设计
2021-12-20 14:56:31 49 举报
AI智能生成
来康康
作者其他创作
大纲/内容
第一章 程序设计与C语言<br>
程序与程序设计语言<br>
程序设计语言的发展
机器语言
用二进制码...<br>
汇编语言
助记符代替二进制
高级语言
非结构化语言
结构化语言<br>
面向对象的语言
程序设计的语言功能
数据表达<br>
流程控制
顺序控制结构<br>
分支控制结构
循环控制结构
程序的算法表示
用文字描述算法
用流程图描述算法
伪代码表示
程序设计语言表示
C语言程序设计的特点
C语言的特点
C语言语句简洁紧凑,使用方便灵活
运算符丰富,表达能力强
C语言程序可移植性好
生成的代码质量高,运行效率高
语言处理能力强
<br>
C语言是一种结构化语言
C语言的约定
C语言中的约定
标识符<br>
关键字
用户自定义标识符
预定义标识符
分隔符
C语言的语法成分<br>
常量
变量
运算符<br>
表达式
语句<br>
函数定义与调用
C语言的编辑、编译、链接、运行
程序设计的任务
分析问题
设计算法
程序设计
运行并调试程序
分析程序运行结果
运行C语言的步骤与方法
编辑源程序
编译
链接
运行
第二章 数据类型、运算符和表达式<br>
C语言的数据类型
基本类型
整型
字符型
浮点型
构造类型
数组类型<br>
结构体类型
共用体类型
枚举类型
指针类型
指针是C语言中一种特殊的,同时又具有重要作用的数据类型
空类型
C语言的常量<br>
直接常量
整型常量
正整数
负整数
0
实型常量<br>
小数形式
指数形式
字符型常量
指单个字符,用一对单引号及其括号所括起来的字符来表示
字符串常量
由一对双引号括起来的零个或多个字符序列
符号常量
用一个标识符来表示一个常量,称之为符号常量
增加程序的可读性
提高程序的可维护性
简化程序代码
方便数组的定义
C语言的变量
变量的定义与使用
变量的定义
格式为:类型说明符 变量名表;<br>
变量的初始化
C语言允许在定义变量的同时对变量赋值<br>
变量的使用
变量定义之后,就可以在程序中使用。<br>
先赋值,再使用<br>
整型变量
一个整型变量用来你保存整数
实型变量
单精度(float型)和双精度(double型)
字符型变量
字符型变量的值就是字符常量
运算符和表达式<br>
赋值运算符和赋值表达式
简单赋值运算符
复合赋值运算符<br>
赋值表达式
算术运算符和算数表达式
基本的算术运算符
自增自减运算符<br>
算术运算符的优先级和结合性
算术表达式<br>
逗号运算符和逗号表达式
形式为:表达式1,表达式2,...,表达式n
执行顺序为从左到右依次计算每个表达式的值,并把最后一个表达式的值作为整个逗号表达式的值<br>
逗号运算符是双目运算符,其优先级最低,是左结合的
求字节数运算符<br>
运算符sizeof用于计算机类型所占的字节数,它是一个单目运算符,优先级高于双目运算符
格式为:1.sizeof(表达式)或sizeof表达式 2.sizeof(数据类型名)
数据类型转换
自动类型转换
把占用内存空间少的(低级)类型向占用空间多的(高级)类型转换,以保证运算的精准度
强制类型转换
格式为:(类型说明符)(表达式)
把表达式的运算结果强制转换成类型说明符指定的类型<br>
需强制类型转换中的表达式一定要括起来,否则只对紧随括号后的量进行类型转换<br>
强制类型转换是一种不安全的转换,如果是从高级类型转换成低级类型,则会损失数据的精度
强制类型转换并不改变表达式中变量的类型和值<br>
第三章 顺序结构程序设计<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语句的嵌套
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语句时,只影响包含他们的内循环,与外循环无关
0 条评论
下一页