![第一章c语言基础_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-10/12/4673ed57-0e97-45d7-9d7f-229a5d18f01c/4673ed57-0e97-45d7-9d7f-229a5d18f01c1.gif)
![第一章c语言基础_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-10/12/4673ed57-0e97-45d7-9d7f-229a5d18f01c/4673ed57-0e97-45d7-9d7f-229a5d18f01c2.gif)
![第一章c语言基础_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-10/12/4673ed57-0e97-45d7-9d7f-229a5d18f01c/4673ed57-0e97-45d7-9d7f-229a5d18f01c3.gif)
![第一章c语言基础_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-10/12/4673ed57-0e97-45d7-9d7f-229a5d18f01c/4673ed57-0e97-45d7-9d7f-229a5d18f01c4.gif)
![第一章c语言基础_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-10/12/4673ed57-0e97-45d7-9d7f-229a5d18f01c/4673ed57-0e97-45d7-9d7f-229a5d18f01c5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一篇第一篇 c语言程序设计基础语言程序设计基础第一章第一章 c 语言基础语言基础目录第一节第一节 程序的概念程序的概念 n一、计算机语言一、计算机语言n二、算法及其描述二、算法及其描述 解决问题的具体方法和步骤解决问题的具体方法和步骤 表示方式表示方式:自然语言、类语言、:自然语言、类语言、流程图流程图、n-sn-s图图。开始/结束处理输入/输出判断/分支流程指示线目录开始输入 a 和 bmax=b输出max结束 a b?max=a是否目录n三、程序 通常指完成某些事务的一种既定方式和过程 将用计算机语言表示出来的算法就是程序n四、算法和程序的区别1.算法是有穷的,程序可以是无穷的;2.描述
2、方法不一样;3.算法不可执行目录提出问题选择方法分析结果调试运行编制程序构造模型第二节 计算机解题过程目录第三节 c的基本数据类型数据类型是指定义了一组数据以及定义在这一组数据上数据类型是指定义了一组数据以及定义在这一组数据上的操作,它是程序中最基本的元素。的操作,它是程序中最基本的元素。 数据类型数据类型基本类型基本类型空类型空类型构造类型构造类型指针类型指针类型整型整型实型(浮点型)实型(浮点型)字符型字符型结构体结构体数组数组枚举类型枚举类型共用体共用体目录一、常量一、常量1.整型常量整型常量n整型常量表示整数,可以用十进制、八进制或十六进制表示。整型常量表示整数,可以用十进制、八进制或
3、十六进制表示。1. 十进制常量十进制常量:由数字由数字0到到9和正负号组成,没有前缀,不能以和正负号组成,没有前缀,不能以0开始,没开始,没有小数部分,如有小数部分,如3,-7等。等。2. 八进制常量:由数字由数字0开头,其后由若干个开头,其后由若干个07的数字组成,没有小数的数字组成,没有小数部分,部分,不能带符号不能带符号,如,如0376,0123等。等。3.十六进制常量:以以0 x或或0x开头,其后由若干开头,其后由若干09的数字及的数字及af(或(或af)的字母组成,没有小数部分,)的字母组成,没有小数部分,不能带符号不能带符号,如,如0 x173,0 x3af。* *整形在机器中占两
4、字节,数值范围是整形在机器中占两字节,数值范围是32768327683276732767 目录2.实型常量n实型常量只能以十进制形式表示。有两种表示形式:实型常量只能以十进制形式表示。有两种表示形式:1. 定点实数使用这种表示形式时,实型常量分为整数部分和小数部分。使用这种表示形式时,实型常量分为整数部分和小数部分。如如10.2,4.2,-1.23,.23 , 25. 等。等。2. 浮点实数:指数表示法也称科学记数法,表示方法是也称科学记数法,表示方法是:系数系数e指数指数。 如如1.2e20, -3.4e-2。 注意:指数部分必须是整数,并且在注意:指数部分必须是整数,并且在e或或e的两边都
5、至少要有的两边都至少要有一位数。如以下数是非法的:一位数。如以下数是非法的: e5、3.2e * *实形在机器中占实形在机器中占4 4字节,数值范围是字节,数值范围是-10-103838 10103838 ,有效位数是,有效位数是7位位目录3.字符型常量1. 字符常量oc中字符常量是用单引号括起的一个字符,如中字符常量是用单引号括起的一个字符,如a 、+等;等; 。o在内存中,字符数据以在内存中,字符数据以ascii码存储,如字符码存储,如字符a的的ascii码码为为97;2. 转义字符 转义字符是特殊的字符常量,表示时一般以转义字符转义字符是特殊的字符常量,表示时一般以转义字符开始,开始,后
6、跟不同的字符表示不同的特殊字符,表后跟不同的字符表示不同的特殊字符,表1-1列出了常用的特殊字列出了常用的特殊字符,如符,如101(八进制)(八进制) 、 x41(十六进制)都可以表示字符(十六进制)都可以表示字符a。 再如再如b 表示退格,表示退格,r表示回车,表示回车,n表示换行表示换行目录4.字符串常量n字符串常量是由一对双引号括起来的零个或多个字符序列。字符串常量是由一对双引号括起来的零个或多个字符序列。如如“good morning!”n字符串存储时,系统自动在字符串末尾加上结束标记字符串存储时,系统自动在字符串末尾加上结束标记0. 如如“good morning!”= “good
7、morning! ”n注意注意a和和“a”的区别:的区别:na是一个字符常量,在内存中占一个字节是一个字符常量,在内存中占一个字节:n而而“a”是一个字符串常量,在内存中占两个字节是一个字符串常量,在内存中占两个字节:9797 0目录二、变二、变 量量n变量是指程序在运行时其值可改变的量。变量是指程序在运行时其值可改变的量。n每个变量由一个变量名惟一标识,同时,每个变量又具有一个特定的数每个变量由一个变量名惟一标识,同时,每个变量又具有一个特定的数据类型。据类型。n不同类型的变量在内存中占有存储单元的个数不同。不同类型的变量在内存中占有存储单元的个数不同。1、标识符:变量名、标识符:变量名n标
8、识符命名规则标识符命名规则o英文字母大小写;数字英文字母大小写;数字09;下划线。;下划线。o以字母下划线开头;以字母下划线开头;o尽量尽量“见名知义见名知义”。例:例:sum, a8f, x, avg_1 错误的标识符:错误的标识符:5y, t/y, “good”, 目录 auto break casecharconst continuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolati
9、lewhilec的关键字的关键字 关键字: c系统保留字;目录2.变量定义nc中,变量使用之前一定要定义或说明,中,变量使用之前一定要定义或说明,不同类型的变量在内存中占有不同类型的变量在内存中占有存储单元的个数不同。存储单元的个数不同。n变量定义的格式一般为:变量定义的格式一般为:类型类型 变量名变量名1,变量,变量2、变量、变量3n变量类型有基本数据类型有:变量类型有基本数据类型有:n整型变量整型变量: 基本整形基本整形int; 长整形长整形long; 短整型短整型shortn实型变量有:实型变量有: 单精度实型(单精度实型(float););双精度实型 doublen字符型变量 char
10、目录3.变量初始化n变量赋值一般采用两种方式:变量赋值一般采用两种方式:n第一种方式是在定义变量时给变量赋一个初值第一种方式是在定义变量时给变量赋一个初值-变量初始变量初始化,例如:化,例如:int a=3;float b=3.4,c=2.8;char d=a;n第二种方式是先定义变量,然后通过赋值语句赋值,例如:第二种方式是先定义变量,然后通过赋值语句赋值,例如:int a;a=3;目录第四节第四节 算数运算符和算数表达式算数运算符和算数表达式一、基本的运算符一、基本的运算符运算符运算符: : 规定了对数据的基本操作。规定了对数据的基本操作。1.1.分类分类: : 按功能分按功能分运算符的主
11、要类型有运算符的主要类型有o 算术运算符:算术运算符:+ - + - * * / % + - / % + -o 赋值运算符:赋值运算符:= =o 关系运算符:关系运算符: = = = = !=o 逻辑运算符逻辑运算符: ! & |: ! & | 对象个数分对象个数分: :单目、双目、三目、其它;单目、双目、三目、其它;2.2.优先级与结合性优先级与结合性 优先级:表达式求值时,按运算符的优先级别高低次序执行优先级:表达式求值时,按运算符的优先级别高低次序执行 ; 结合性:运算符的优先级别相同,按自左至右结合性:运算符的优先级别相同,按自左至右( (自右至左自右至左) )的结的结 合方向运算;合
12、方向运算;目录二、二、 算术表达式算术表达式1. 1. 基本算术运算符基本算术运算符 + + (加法运算符,或正值运算符。如(加法运算符,或正值运算符。如3+53+5、+3+3)(减法运算符,或负值运算符。如(减法运算符,或负值运算符。如5-25-2、-3-3)* * (乘法运算符。如(乘法运算符。如3 3* *5 5)/ / (除法运算符。如(除法运算符。如5/35/3)% % (取余运算符,如(取余运算符,如7%47%4)双目运算符,即要求有两个操作数。双目运算符,即要求有两个操作数。/” /” 两边都为整数时作整除;如两边都为整数时作整除;如5/2=25/2=2 % %两侧必须均为整型,
13、如两侧必须均为整型,如7%4=37%4=3目录v相同类型数据直接运算,结果为原数据类型;相同类型数据直接运算,结果为原数据类型;v不同类型数据运算,先转换成同一数据类型,再计算不同类型数据运算,先转换成同一数据类型,再计算. .类型转换的两种转换形式:类型转换的两种转换形式:隐式转换、显示转换隐式转换、显示转换。三、不同数据类型的混合运算转换三、不同数据类型的混合运算转换char,shortintunsignedlongdoublefloat低低高高隐式转换隐式转换目录2 2、显示转换、显示转换一般形式为:(类型名)(表达式)一般形式为:(类型名)(表达式)例如:例如: (double) a
14、(double) a (将将a a转换成转换成doubledouble型型) ) (int)(x+y (int)(x+y) () (将将x+yx+y的值转换成整型的值转换成整型) )说明:强制类型转换得到一个所需类型的中间变量,原来变量说明:强制类型转换得到一个所需类型的中间变量,原来变量的类型未发生变化。的类型未发生变化。目录#include main() float m; int n;m=1.31;n=(int)m; printf(m=%f,n=%dn,m,n);例例目录例:含有显示类型转换的表达式的计算。例:含有显示类型转换的表达式的计算。n main() int a=2, b=3; f
15、loat x=3.5, y=2.5, z; z=(float )(a+b)/2 + (int)x%(int)y; printf(n %f, z); 运行结果:运行结果: 3.500000目录第五节第五节 赋值运算符和赋值表达式赋值运算符和赋值表达式赋值赋值 : :给变量提供数据的一种方法。给变量提供数据的一种方法。一一. . 赋值表达式赋值表达式: : 变量变量 = = 表达式表达式 作用:先计算作用:先计算“=”=”右边表达式的值,然后将其送给右边表达式的值,然后将其送给“=”=”左边左边 的变量。的变量。 如:如:area = rarea = r* *r r* *3.14 3.14 s=0
16、 s=0 优先级优先级 : : 比算术运算符低,仅高于逗号运算符。比算术运算符低,仅高于逗号运算符。结合性结合性 :自右向左。自右向左。若定义若定义 :intint a=2; a=2; 表达式表达式 b=c=a+4 b=c=a+4 的计算过程为:的计算过程为: 先计算:先计算:c=a+4 c=a+4 得该表达式的值为得该表达式的值为 6 6 ; 然后计算:然后计算:b=6 b=6 得该赋值表达式的值为得该赋值表达式的值为 6 6。目录二二. .复合赋值表达式:复合赋值表达式: 在赋值符在赋值符“=”=”之前加上其他运算符。之前加上其他运算符。 例如:例如:a+=3 a+=3 等价于等价于 a=
17、a+3a=a+3 x x* *=y+8 =y+8 等价于等价于 x=x x=x * *(y+8)(y+8)+i ,- -i : +i ,- -i : 使用使用i i之前,先使之前,先使i i的值加(减)的值加(减)1;1;i+ ,i- - : i+ ,i- - : 使用使用i i之后,再使之后,再使i i的值加(减)的值加(减)1;1;如果如果 i=3i=3,则执行语句:,则执行语句: j=+i; j j=+i; j值为值为4, 4, 等价于等价于 i=i+1; j=i;i=i+1; j=i; (i i先加先加1 1,后参与表达式的运算),后参与表达式的运算) j=i+; j j=i+; j值
18、为值为3, 3, 等价于等价于 j=i; i=i+1;j=i; i=i+1; (i i先参与表达式的运算,然后加先参与表达式的运算,然后加1 1 ) 三三. .自加、自减运算符:自加、自减运算符:目录例:例:main() int i=6,j=6,k=6, h=6,m,n,x,y; m=i+; n=+j; x = k-; y= -h; printf(n i=%d, m=%d, j=%d, n=%d, i, m, j, n); printf(n k=%d, x=%d, h=%d, y=%d, k, x, h, y);运行结果:运行结果: i=7, m=6, j=7, n=7 k=5, x=6, h=5, y= 5注意:注意:+和和- - 只能用于变量只能用于变量,不能用于常量或表达式不能用于常量或表达式 。 5+; +(3+a)目录优先次序优先次序(见图见图):算术运算符算术运算符关系运算符关系运算符赋值运算符赋值运算符低低高高!运算符!运算符&.|运算符运算符目录第六节第六节 逗号运算符和逗号表达式逗号运算符和逗号表达式一一. .逗号运算符一般形式为:逗号运算符一般形式为: 表达式表达式1 1,表达式,表达式2 2 用逗号将两个表达式连接起来称为逗号表达式。用逗号将两个表达式连接起来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烹饪工艺学(第2版) 课件 单元4 分解与切割工艺
- 二零二五年度门卫服务与社区物业管理信息化合同
- 《时尚北京》杂志2024年第11期
- 《贸易术语讲解》课件
- (高清版)DB37∕T 3004-2017 金银花无纺布容器嫩枝扦插育苗技术规程
- 《项目仓储系统规》课件
- 《公司兼并与收购》课件
- 二零二五年度冷链物流仓储承包经营协议3篇
- 2025至2031年中国悬挂式记录电极行业投资前景及策略咨询研究报告
- 2025至2031年中国印刷机墙板行业投资前景及策略咨询研究报告
- NB/T 11526-2024煤矿微震监测系统通用技术条件
- 2025年福建长汀金龙稀土有限公司招聘笔试参考题库含答案解析
- 2024年济南护理职业学院高职单招职业技能测验历年参考题库(频考版)含答案解析
- 四川省绵阳市2025届高三第二次诊断性考试英语试题(含答案无听力原文及音频)
- 贵州省贵阳市普通中学2024-2025学年高二上学期期末监测历史试题(含答案)
- 2025年八省适应性 历史试卷(西北卷)
- Python金融数据挖掘与分析实战课程教案教学教案
- 《企业偿债能力存在的问题及优化建议:以S地产公司为例》9500字(论文)
- 2025年上半年水利部长江水利委员会事业单位招聘68人(湖北武汉)重点基础提升(共500题)附带答案详解
- (2024)云南省公务员考试《行测》真题及答案解析
- 地方政府专项发债项目培训课件
评论
0/150
提交评论