c语言课件3
合集下载
C语言第3章数据类型、运算符与表达式ppt课件
第三章
数据类型、运算符与表达式
1
主要内容
一、C的数据类型 二、常量与变量 三、基本数据类型 四、运算符与表达式
2
一、C的数据类型
(一) 什么是数据类型? (二) C语言的数据类型有哪些?
3
(一) 什么是数据类型?
对数据的描述
对操作的描述
数据结构+算法=程序
C语言中以 “数据类型”形式存在
4
所谓数据类型是按被定义变量的性质,表示形 式,占据存储空间的多少,构造特点来划分的。
int NUM=20; sum=PRICE*NUM;
11
符号常量优点
1、含义清楚。 2、在需要改变一个常量时,能够做到“一
改全改”
12
(二)变量
概念
变量代表内存中具有特定属性的一 个存储单元,它用来存放数据,也 就是变量的值。
13
(1)变量名。每个变量都有一个名字 ──变量名,代表一个地址。 (2)变量值。在程序运行过程中,变 量值存储在内存中。在程序中,通过 变量名来引用变量的值。
#include <stdio.h>
void main() {
int student,age; int if=adrress=1; float score=90;
stadent=2; Age=20; printf("%d %d %d %f",if,student,age,score); }
本程序中有 几处错误?
(5)标识符的有效长度随系统而异,如果超 长,则超长部分被舍弃。VC++6.0中规 定最大长度为247个字符。
23
请选出下列正确的标识符 M.D.John , 12%gf ,1add ,_ce36 ,age& 5thclass, lotus-1-2-3 , cd*ef , float,
数据类型、运算符与表达式
1
主要内容
一、C的数据类型 二、常量与变量 三、基本数据类型 四、运算符与表达式
2
一、C的数据类型
(一) 什么是数据类型? (二) C语言的数据类型有哪些?
3
(一) 什么是数据类型?
对数据的描述
对操作的描述
数据结构+算法=程序
C语言中以 “数据类型”形式存在
4
所谓数据类型是按被定义变量的性质,表示形 式,占据存储空间的多少,构造特点来划分的。
int NUM=20; sum=PRICE*NUM;
11
符号常量优点
1、含义清楚。 2、在需要改变一个常量时,能够做到“一
改全改”
12
(二)变量
概念
变量代表内存中具有特定属性的一 个存储单元,它用来存放数据,也 就是变量的值。
13
(1)变量名。每个变量都有一个名字 ──变量名,代表一个地址。 (2)变量值。在程序运行过程中,变 量值存储在内存中。在程序中,通过 变量名来引用变量的值。
#include <stdio.h>
void main() {
int student,age; int if=adrress=1; float score=90;
stadent=2; Age=20; printf("%d %d %d %f",if,student,age,score); }
本程序中有 几处错误?
(5)标识符的有效长度随系统而异,如果超 长,则超长部分被舍弃。VC++6.0中规 定最大长度为247个字符。
23
请选出下列正确的标识符 M.D.John , 12%gf ,1add ,_ce36 ,age& 5thclass, lotus-1-2-3 , cd*ef , float,
C语言课件第三章
三、 自增、自减运算符 ++ --
++、- -运算符的作用是使变量的值加1或减1
1)该运算符为单目运算符,其运算对象只能是 变量,不能为常量或者表达式。 例如: i++ 、x- - 都是正确的 5++ 、(x+y)++ 都是错误的
2)该运算符作前缀、后缀都可以 例如 i++、++i、i- - 、- -i 都是正确的
3)对变量而言 i++ 或者++i都相当于i=i+1 i- -或者- -i都相当于i=i-1
例如: main( ) { int i=3 , j=3; +i+++i; j---j;; printf (“%d, %d\n”, i, j ); }
运行结果:4,2
4)但如果作为表达式,前缀和后缀则不同: 后缀:先取值再运算(i++,先取i值,i再自加) 前缀:先运算再取值(++i,i先自加,再取i值)
2)强制类型转换运算符优先级高于算术运算符
float x=3.6; int y; y=(int)x%3+2;
x = ?3.6 y=?2
计算下列表达式的值 设 x=2.5, a=7,y=4.7
x+a%3 * (int)(7x7+.2y ) % 2 / 4
设 a=2,b=3,x=3.5,y=2.5
(float5).(0a+b )/2+(int3)(x)%(int2)(y)
例如: main() { int i=3; printf(“%d\n”+, +i+i+ ); printf(“%d”, i ); }
《计算机c语言》课件
数据
关闭文件:使用fclose()函 数,关闭打开的文件
程序调试技巧和方法
单步调试:逐行执行代码, 观察变量值和程序状态
异常处理:使用try-catch 语句捕获和处理异常,避免
程序崩溃
代码审查:与他人共同审查 代码,发现潜在问题
断点调试:设置断点,逐 步执行代码,观察变量值
和程序状态
打印调试:在关键位置打 印变量值,观察程序状态
数组的定义:使用关键字 "int[]"、"char[]"等定义数
组
添加标题
数组的访问:通过数组下标 访问数组元素,下标从0开始
添加标题
数组的修改:可以通过数组 下标修改数组元素
数组的查找:可以使用查找 算法在数组中查找元素,如
二分查找、顺序查找等
字符串的处理和操作
字符串的定义:由字符组成 的序列,用双引号括起来
嵌套控制结构
概念:在一个控制 结构中嵌套另一个 控制结构
应用场景:循环嵌 套、条件嵌套等
语法:使用{}、() 等符号表示嵌套关 系
示例:for(int i=0;i<10;i++){if(i %2==0){...}}
函数和程序结构
函数的定义和调用
函数的定义:函数是完成特定任务的独立代码块,可以重复使用。 函数的调用:在程序中使用函数名和参数列表来调用函数。 函数的参数:函数可以接受参数,参数可以是变量、常量或表达式。 函数的返回值:函数可以返回一个值,返回值可以是任何类型的数据。
数据类型和运算 符
变量和常量
变量:在程序运行过程中可以改变的值
常量类型:整型、浮点型、字符型、布 尔型等
常量:在程序运行过程中不能改变的值
关闭文件:使用fclose()函 数,关闭打开的文件
程序调试技巧和方法
单步调试:逐行执行代码, 观察变量值和程序状态
异常处理:使用try-catch 语句捕获和处理异常,避免
程序崩溃
代码审查:与他人共同审查 代码,发现潜在问题
断点调试:设置断点,逐 步执行代码,观察变量值
和程序状态
打印调试:在关键位置打 印变量值,观察程序状态
数组的定义:使用关键字 "int[]"、"char[]"等定义数
组
添加标题
数组的访问:通过数组下标 访问数组元素,下标从0开始
添加标题
数组的修改:可以通过数组 下标修改数组元素
数组的查找:可以使用查找 算法在数组中查找元素,如
二分查找、顺序查找等
字符串的处理和操作
字符串的定义:由字符组成 的序列,用双引号括起来
嵌套控制结构
概念:在一个控制 结构中嵌套另一个 控制结构
应用场景:循环嵌 套、条件嵌套等
语法:使用{}、() 等符号表示嵌套关 系
示例:for(int i=0;i<10;i++){if(i %2==0){...}}
函数和程序结构
函数的定义和调用
函数的定义:函数是完成特定任务的独立代码块,可以重复使用。 函数的调用:在程序中使用函数名和参数列表来调用函数。 函数的参数:函数可以接受参数,参数可以是变量、常量或表达式。 函数的返回值:函数可以返回一个值,返回值可以是任何类型的数据。
数据类型和运算 符
变量和常量
变量:在程序运行过程中可以改变的值
常量类型:整型、浮点型、字符型、布 尔型等
常量:在程序运行过程中不能改变的值
精品-清华大学C语言课件 第3章02 描述算法
本讲大纲
描述算法
1.用自然语言描述 2. 用流程图描述 3.三种基本结构 4.绘制N-S流程图 5.用伪代码描述算法
实例3 任意输入三个数,求这三个数中的最大数 实例4 判断2000~2500年中的年份是否为闰年 实例5 用伪代码描述n!
用自然语言描述
所谓自然语言就是日常生活中的语言,它可以是汉语,英语,日语等,一般描述一些简单问题步 骤可以通俗简单易懂。下面通过具体实例来介绍自然语言。 【例3.1】 求正整数a和b的最大公约数。 第一步:输入a和b的值; 第二步:求a除以b的余数c; 第三步:若c等于0,则b为最大公约数,算法结束;否则执行第四步; 第四步:将b的值放在a中,将c的值放在b中; 第五步:重新执行第二步。
【例3.6】 从键盘中输入一个数n,求n!。 该程序流程图如图3.16所示。
图3.16 求n!
该程序的N-S流程图如图3.17所示。
输入一个数赋给变量n
Y s=1 n>0
Y i=1
i<=n
n>=0
N
N 输出 error
s=s*i i=i+1 输出s
图3.17 求n!的N用介于自然语言和计算机语言之间的文字和符号来描述算法。它采用某一程序设计语言 的基本语法,如操作指令可以结合自然语言来设计。而且,它不用符号,书写方便,没有固定的语法 和格式,具有很大的随意性,便于向程序过渡。 下面通过一个例子用伪代码描述算法。 【例3.7】 用伪代码描述两个正整数a和b最大公约数的算法。
图3.12 顺序结构 (2)选择结构的N-S流程图如图3.13所示。
图3.13 选择结构
(3)当型循环的N-S流程图如图3.14所示。 当P成立
图3.14 当型循环 (4)直到型循环的N-S流程图如图3.15所示。
描述算法
1.用自然语言描述 2. 用流程图描述 3.三种基本结构 4.绘制N-S流程图 5.用伪代码描述算法
实例3 任意输入三个数,求这三个数中的最大数 实例4 判断2000~2500年中的年份是否为闰年 实例5 用伪代码描述n!
用自然语言描述
所谓自然语言就是日常生活中的语言,它可以是汉语,英语,日语等,一般描述一些简单问题步 骤可以通俗简单易懂。下面通过具体实例来介绍自然语言。 【例3.1】 求正整数a和b的最大公约数。 第一步:输入a和b的值; 第二步:求a除以b的余数c; 第三步:若c等于0,则b为最大公约数,算法结束;否则执行第四步; 第四步:将b的值放在a中,将c的值放在b中; 第五步:重新执行第二步。
【例3.6】 从键盘中输入一个数n,求n!。 该程序流程图如图3.16所示。
图3.16 求n!
该程序的N-S流程图如图3.17所示。
输入一个数赋给变量n
Y s=1 n>0
Y i=1
i<=n
n>=0
N
N 输出 error
s=s*i i=i+1 输出s
图3.17 求n!的N用介于自然语言和计算机语言之间的文字和符号来描述算法。它采用某一程序设计语言 的基本语法,如操作指令可以结合自然语言来设计。而且,它不用符号,书写方便,没有固定的语法 和格式,具有很大的随意性,便于向程序过渡。 下面通过一个例子用伪代码描述算法。 【例3.7】 用伪代码描述两个正整数a和b最大公约数的算法。
图3.12 顺序结构 (2)选择结构的N-S流程图如图3.13所示。
图3.13 选择结构
(3)当型循环的N-S流程图如图3.14所示。 当P成立
图3.14 当型循环 (4)直到型循环的N-S流程图如图3.15所示。
计算机二级C语言课件第3章最简单的C程序设计1-改
例3.2
解题思路:确定计算本息和的公式。
从数学知识可知:若存款额为p0,则: 活期存款一年后本息和为:
p1=p0(1+r1) 一年期定期存款,一年后本息和为:
p2=p0(1+r2) 两次半年定期存款,一年后本息和为:
p3 = p0(1+ r3)(1+ r3 ) 22
例3.2
#include <stdio.h> int main ( )
一个字符变量在内存中占一个字节。
字符数据在内存中的存储形式及其使用方法
将一个字符常量放到一个字符变量中,, 而是将该字符的相应的ASCII代码放到存 储单元中。例如字符‘a’的ASCII代码为 97,‘b’为98,在内存中变量c1、c2的值如图
(a)所示。实际上是以二进制形式存放的,如 图(b)所示。P48
[signed ] int unsigned int
注意: 取值范围 举例P47
例:
#include<stdio.h>
void main( )
运行结果:
{int a,b,c,d;
a十u=22,b+u=-14
unsigned u;
a=12;b=-24;u=10;
c=a+u;d=b+u;
printf(“a+u=%d ,b+u=%d”,c,d);
字符常量
• 定义:用单引号括起来的单个普通字符或转义字符.
• 字符常量如的值‘:a’该字‘A符’ 的‘?’ASC‘I\nI’码值‘\101’
• 转转义义字字如符符:反及‘‘斜其A0’’线含——后义——面:6458跟P,4,一0表‘‘个\n3a字’.’——1符——或190一7,个代码值表示
C语言程序设计ppt课件-第3章-选择结构
1.表达式 2. if语句 3. switch语句 4. 选择结构的嵌套 5. 选择结构的应用
本章主要内容
1
选择结构
在解决大量的实际问题时,常常需要根据不同的 情况或条件,制定出不同的解决方案或对策。
选择结构是通过对条件 的判断来选择执行不同 的程序语句。
选择结构
一个程序若具有了判断和选择功 能,就具备了最基本的智能。
的完整的解题步骤。
void main() { int x,y,z,max;
printf("“\n Please input x,y,z: ");
➢将同影一响问到题算可法用乃不至同程算序法的解效决率,sifc(a。xm而n>afy(一一x)"=%x个个;d%算算d法法%d的的",&评质x价,量&y主优,&要z劣); 从时间复杂度和空间复杂度来els考e 虑。
max=y;
例从键盘输入三个不同的、无序if(mm的aaxx整<=zz)数; ,并分别存放 到变量x、y、z中,然后通过pr判int断f("输\n 出ma三x=%个d数\n"中,m的ax)最;
大数。要求将最大数存放在} 变量max中。
25
语法练习(单选题)
1.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中
switch语句的应用
关例键从语键句盘:上输入一个学生的总平均成 绩能用(i大f- e于ls0e且if来小替于换10吗0)? swi,tc按h(分(i数nt段)(评sc定or出e/成10绩.的0)相) 应等级,90以上为A级,80~
{89为caBs级e ,97:0~g7r9a为dCe=级'A,'6;0~br6e9a为k;D级,59以下为E级。 问题分ca析se:s8w:itchg语ra句de中='的B表';达b式re只ak能; 是整型或字符型,所 以可c用as成e 绩7的:高位gr数ad字e=来'C确';定b其re对a应k;的分数段,而每一个 分数c段as又e对6应:swigtrcha中de的='一D'路; 选br择ea。k;可用表达式“((int)(成 绩/1c0)a)s”e 计5算:出成绩的高位数字 ,其中,“(int)”的功能 是将c表as达e式的4:值强制转换成整数。
本章主要内容
1
选择结构
在解决大量的实际问题时,常常需要根据不同的 情况或条件,制定出不同的解决方案或对策。
选择结构是通过对条件 的判断来选择执行不同 的程序语句。
选择结构
一个程序若具有了判断和选择功 能,就具备了最基本的智能。
的完整的解题步骤。
void main() { int x,y,z,max;
printf("“\n Please input x,y,z: ");
➢将同影一响问到题算可法用乃不至同程算序法的解效决率,sifc(a。xm而n>afy(一一x)"=%x个个;d%算算d法法%d的的",&评质x价,量&y主优,&要z劣); 从时间复杂度和空间复杂度来els考e 虑。
max=y;
例从键盘输入三个不同的、无序if(mm的aaxx整<=zz)数; ,并分别存放 到变量x、y、z中,然后通过pr判int断f("输\n 出ma三x=%个d数\n"中,m的ax)最;
大数。要求将最大数存放在} 变量max中。
25
语法练习(单选题)
1.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中
switch语句的应用
关例键从语键句盘:上输入一个学生的总平均成 绩能用(i大f- e于ls0e且if来小替于换10吗0)? swi,tc按h(分(i数nt段)(评sc定or出e/成10绩.的0)相) 应等级,90以上为A级,80~
{89为caBs级e ,97:0~g7r9a为dCe=级'A,'6;0~br6e9a为k;D级,59以下为E级。 问题分ca析se:s8w:itchg语ra句de中='的B表';达b式re只ak能; 是整型或字符型,所 以可c用as成e 绩7的:高位gr数ad字e=来'C确';定b其re对a应k;的分数段,而每一个 分数c段as又e对6应:swigtrcha中de的='一D'路; 选br择ea。k;可用表达式“((int)(成 绩/1c0)a)s”e 计5算:出成绩的高位数字 ,其中,“(int)”的功能 是将c表as达e式的4:值强制转换成整数。
四川大学《c语言程序设计》课件-第3章 键盘输入与屏幕输出
Please input a and b: 123456↙ a=12, b=56, a+b = 68
30/44
输入数据的格式控制——例3.9
#include <stdio.h> main() {
int a, b;
12 34↙
scanf("%d %d", &a, &b); printf("a = %d, b = %d\n", a, b); }
%d decimal 以带符号十进制整数输出
%f float 以小数形式输出浮点数(6位小数)
%e exponent 以标准指数形式输出(6位小数)
%g
选用%f,%e中输出宽度较小的一种格式
%o octal 以八进制无符号整数输出(无前导0)
%x hex
以十六进制无符号整数输出(无前导0x)
%u unsigned 以十进制无符号整数输出
例:
printf("Value is:%10f", 32.6784728);
6 digits (default) Value is: 32.678473
10 个字符长度
19/44
printf 函数 – 浮点数输出
例:
printf("Value is:%10.5f", 32.6784);
5 digits Value is: 32.67840
break
do~while() return
变量定义语句
int a, b, c; 表达式语句
c = a + b; 函数调用语句
printf("Hello World!"); 复合语句 空语句
C语言程序设计教程ppt课件完整版pptx
C语言的应用领域
计算机系统基本概念
计算机系统的组成 操作系统的基本概念 计算机中的数与编码
编程环境与工具安装配置
01
常见的C语言编程环境
02
安装与配置C语言编译器
使用集成开发环境(IDE)进行C语言编程
03
第一个C程序:Hello, World!
01
C程序的基本结 构
02
编写Hello, World!程序
应用场景
适用于需要根据特定条件提前终 止循环或跳过某些循环操作的情 况。
04 函数与模块化设计
函数定义和调用
01
函数定义
包括函数名、参数列表、返回值 类型和函数体等部分,用于描述 函数的功能和实现细节。
函数调用
02
03
函数声明
通过函数名和参数列表来调用函 数,实现相应功能并获取返回值 。
在使用函数之前,需要对函数进 行声明,以便编译器识别函数的 存在和调用方式。
THANKS FOR WATCHING
感谢您的观看
指针运算符
包括取地址运算符&和取值运算符*,分别 用于获取变量的内存地址和通过指针访问内 存中的数据。
动态内存分配函数(malloc, free)使用方法
malloc函数
用于在堆区动态分配指定大小的内存空间,并返回 分配内存的起始地址。
free函数
用于释放之前通过malloc函数分配的内存空间,防 止内存泄漏。
动态规划思想
动态规划是一种在数学、计算机科学和经济学中 使用的,通过把原问题分解为相对简单的子问题 的方式来求解复杂问题的方法。动态规划常用于 优化重叠子问题的计算。
回溯与分支限界法
回溯法是一种通过探索所有可能的候选解来找出 所有解的算法,而分支限界法是一种通过剪枝来 减少搜索空间的优化算法。回溯与分支限界法常 用于解决组合优化问题。
计算机系统基本概念
计算机系统的组成 操作系统的基本概念 计算机中的数与编码
编程环境与工具安装配置
01
常见的C语言编程环境
02
安装与配置C语言编译器
使用集成开发环境(IDE)进行C语言编程
03
第一个C程序:Hello, World!
01
C程序的基本结 构
02
编写Hello, World!程序
应用场景
适用于需要根据特定条件提前终 止循环或跳过某些循环操作的情 况。
04 函数与模块化设计
函数定义和调用
01
函数定义
包括函数名、参数列表、返回值 类型和函数体等部分,用于描述 函数的功能和实现细节。
函数调用
02
03
函数声明
通过函数名和参数列表来调用函 数,实现相应功能并获取返回值 。
在使用函数之前,需要对函数进 行声明,以便编译器识别函数的 存在和调用方式。
THANKS FOR WATCHING
感谢您的观看
指针运算符
包括取地址运算符&和取值运算符*,分别 用于获取变量的内存地址和通过指针访问内 存中的数据。
动态内存分配函数(malloc, free)使用方法
malloc函数
用于在堆区动态分配指定大小的内存空间,并返回 分配内存的起始地址。
free函数
用于释放之前通过malloc函数分配的内存空间,防 止内存泄漏。
动态规划思想
动态规划是一种在数学、计算机科学和经济学中 使用的,通过把原问题分解为相对简单的子问题 的方式来求解复杂问题的方法。动态规划常用于 优化重叠子问题的计算。
回溯与分支限界法
回溯法是一种通过探索所有可能的候选解来找出 所有解的算法,而分支限界法是一种通过剪枝来 减少搜索空间的优化算法。回溯与分支限界法常 用于解决组合优化问题。
C语言课件_第三章_数据类型
第三章 数据类型
引言 1、计算机中的数据不单是简单的数字,所有计算机处理的信息,包括文字、 声音、图像等都是以一定的数据形式存储的。数据在内存中保存,存放的情况 由数据类型所决定。
2、数据类型即数据结构,决定了数据在内存中的存储形式。不同类型数据在 内存中所占存储空间的大小不同(同一类型数据在不同字长的计算机中所占存 储空间大小也不同),从而导致不同类型可存放数据的大小范围不同。但不论 何种数据类型,其在内存中都是以补码的形式存在的。 3、C语言提供的数据类型包括基本类型、构造类型、指针类型和空类型等,由 这些数据类型可构造出其它更复杂的数据结构(eg:表、栈、树等)。
C、存储:2个字节(Byte)即16位(bit),补码形式
第三章 数据类型
二、整型数据(描述的数据是整数的一个子集) 2、整型变量(分为基本整型、拓展整型) (1)基本整型 D、运算操作 a、算术运算 +(加法) -(减法) *(乘法) /(除法) %(求余)
运算规则:除了除法外,与数学中相同 eg:1+1=2 1-1=0 1*1=1 5%3=2
注意:由于字符在内存中是以二进制存放的,因此char和int可相互赋值,但必 须在一定范围内(0~255)。 (自学:P50 例3.6 向字符变量赋予整数、P51 例3.7 大小写字母的转换)
eg:char 型与 int 型互相赋值
#include <stdio.h> void main( )
{ int i; char c;
问题:用什么变量来存放字符串?
第三章 数据类型
五、变量与常量的定义 (符号常量和变量必须先定义,后使用) 1、常量(符号常量) 通过宏定义预处理命令来实现。 格式: #define 标识符 常量 例如: #define PRICE 30
引言 1、计算机中的数据不单是简单的数字,所有计算机处理的信息,包括文字、 声音、图像等都是以一定的数据形式存储的。数据在内存中保存,存放的情况 由数据类型所决定。
2、数据类型即数据结构,决定了数据在内存中的存储形式。不同类型数据在 内存中所占存储空间的大小不同(同一类型数据在不同字长的计算机中所占存 储空间大小也不同),从而导致不同类型可存放数据的大小范围不同。但不论 何种数据类型,其在内存中都是以补码的形式存在的。 3、C语言提供的数据类型包括基本类型、构造类型、指针类型和空类型等,由 这些数据类型可构造出其它更复杂的数据结构(eg:表、栈、树等)。
C、存储:2个字节(Byte)即16位(bit),补码形式
第三章 数据类型
二、整型数据(描述的数据是整数的一个子集) 2、整型变量(分为基本整型、拓展整型) (1)基本整型 D、运算操作 a、算术运算 +(加法) -(减法) *(乘法) /(除法) %(求余)
运算规则:除了除法外,与数学中相同 eg:1+1=2 1-1=0 1*1=1 5%3=2
注意:由于字符在内存中是以二进制存放的,因此char和int可相互赋值,但必 须在一定范围内(0~255)。 (自学:P50 例3.6 向字符变量赋予整数、P51 例3.7 大小写字母的转换)
eg:char 型与 int 型互相赋值
#include <stdio.h> void main( )
{ int i; char c;
问题:用什么变量来存放字符串?
第三章 数据类型
五、变量与常量的定义 (符号常量和变量必须先定义,后使用) 1、常量(符号常量) 通过宏定义预处理命令来实现。 格式: #define 标识符 常量 例如: #define PRICE 30
C语言课件 第3章 数据类型
基本数据类型:整型, 型,字符型
主要掌握各种类型的常量表示,变量的定义, 所占存储空间的大小,取值范围
一,整型: 整型: 整型 用于表示整数 所占内存空间:随机器而异,一般微机 上一个整型数据占 2B 的内存空间. 整型的可用修饰符: short [int] long [int] unsigned int / unsigned short /unsigned long
3.1 C的基本语法单位 的基本语法单位
1,字符集 character set 2,关键字 keyword 3,标识符 identifier 标识符命名规则: 标识符命名规则: (1)由字母,数字及下划线组成,且不能以字母开头. (2)不能与关键字同名 (3)尽量"见名知义" 例如:下列标识符,是否合法?为什么? area if score student_no 2day month_3 int _sum no*3 &aa
整型变量的定义(或说明): 如: int a, c, no; long s; unsigned x, y; 等 整型常量: decimal: 12 -3 0 octal : 024 056 hexadecimal: 0x3A -0X34 long int : 12L 0L 问题:要定义两个变量x 问题:要定义两个变量x 和y,分别用于存放数据 1024 和 65536,如何确定x和y类型? 65536,如何确定x
由例题分析可知: 由例题分析可知: 常量: 常量:在程序的运行过程中其值不能被改变 的量.如程序中的3 的量.如程序中的3, 4 符号常量: 符号常量:用一个标识符代表一个有特定含 义的常量. 义的常量.如 PI 变量: 变量:在程序的运行过程中其值可以被改变 的量. 的量.如 r , v 提示:变量必须先定义, 提示:变量必须先定义,后使用
主要掌握各种类型的常量表示,变量的定义, 所占存储空间的大小,取值范围
一,整型: 整型: 整型 用于表示整数 所占内存空间:随机器而异,一般微机 上一个整型数据占 2B 的内存空间. 整型的可用修饰符: short [int] long [int] unsigned int / unsigned short /unsigned long
3.1 C的基本语法单位 的基本语法单位
1,字符集 character set 2,关键字 keyword 3,标识符 identifier 标识符命名规则: 标识符命名规则: (1)由字母,数字及下划线组成,且不能以字母开头. (2)不能与关键字同名 (3)尽量"见名知义" 例如:下列标识符,是否合法?为什么? area if score student_no 2day month_3 int _sum no*3 &aa
整型变量的定义(或说明): 如: int a, c, no; long s; unsigned x, y; 等 整型常量: decimal: 12 -3 0 octal : 024 056 hexadecimal: 0x3A -0X34 long int : 12L 0L 问题:要定义两个变量x 问题:要定义两个变量x 和y,分别用于存放数据 1024 和 65536,如何确定x和y类型? 65536,如何确定x
由例题分析可知: 由例题分析可知: 常量: 常量:在程序的运行过程中其值不能被改变 的量.如程序中的3 的量.如程序中的3, 4 符号常量: 符号常量:用一个标识符代表一个有特定含 义的常量. 义的常量.如 PI 变量: 变量:在程序的运行过程中其值可以被改变 的量. 的量.如 r , v 提示:变量必须先定义, 提示:变量必须先定义,后使用
精品课件-C语言程序设计实用教程-第3章 顺序结构的程序设计
3.printf()函数应用举例 【例3.8】 用不同的格式输出同一变量。 #include "stdio.h" main( ) {
char ch='b'; int x=65; printf("ch=%c,%4c,%d\n", ch, ch, ch); printf("x=%d,%c\n", x, x); }
【例3.9】 输出不同的数据类型的应用。
#include "stdio.h"
main()
{ int a,b;
float c;
char ch ;
a=123;
b=-1;
c=1.23;
ch='a';
printf("a=%d, a=%4d\n", a, a ); /*输出整数a的值*/
printf("%d, %o, %x, %u\n", b, b, b, b); /* 输出b的 值*/
(1)格式控制 格式控制由双引号括起来的字符串,主要包括格式说明和需要原 样输出的字符。 ①格式说明 由“%”和格式字符组成,如%d,%f等,作用是将要输出的数据转 换为指定的格式后输出。 ②普通字符 需要原样输出的字符。如“printf("radius=%f", radius);” 语句中的“radius=”就是普通字符。 (2)输出表列:是需要输出的一些数据,可以是常量、变量和 表达式。
printf("%f, %6.1f\n",c,c); c的值 */
/* 输出实数
printf("%c\n", ch);
/*输出字符
3.4.2 scanf()函数
《C语言教学》课件
以简单的语法规则构成,易于理解和掌握。
2 语句和表达式
学会正确地使用各种语句和表达式,是掌握C语言的关键。
3 运算符和操作数
了解各种运算符及其操作数的使用方式,能够编写更加高效的代码。
数据类型
整型数据类型
包括有符号整数和无符号整 数。用于存储整数值。
浮点型数据类型
用于存储带有小数部分的数 值。精度和范围可以调整。
实际应用案例
通过实例深入讲解,让学习更加具体、生动。
C语言发展历程
1
诞生于1 972年
由丹尼斯·里奇为贝尔实验室的UNIX系统而设计。
2
被广泛使用
成为一种通用的高级编程语言,在计算机科学领域占有重要地位。
3展了C语言的功能和应用。
C语言基础语法
1 简洁易学
字符型数据类型
用于存储单个字符。可以表 示各种字母、数字和符号。
控制语句
条件语句
使用if、else if和else关键字进行条件判断和分支选择。
循环语句
使用for、while和do while循环结构进行重复执行。
跳转语句
使用break和continue关键字实现跳出循环或继续下一次循环。
函数
1
动态内存分配
使用malloc()和free()函数,实 现动态内存的分配和释放。
文件操作
1 文件的打开和关闭 2 读写文件内容
3 文件指针的位置
使用fopen()函数打开 文件,并在使用完毕 后使用fclose()函数关 闭文件。
使用fprintf()和fscanf() 等函数对文件进行读 写操作。
函数定义和调用
学会定义函数和调用已有的函数,
函数参数和返回值
2 语句和表达式
学会正确地使用各种语句和表达式,是掌握C语言的关键。
3 运算符和操作数
了解各种运算符及其操作数的使用方式,能够编写更加高效的代码。
数据类型
整型数据类型
包括有符号整数和无符号整 数。用于存储整数值。
浮点型数据类型
用于存储带有小数部分的数 值。精度和范围可以调整。
实际应用案例
通过实例深入讲解,让学习更加具体、生动。
C语言发展历程
1
诞生于1 972年
由丹尼斯·里奇为贝尔实验室的UNIX系统而设计。
2
被广泛使用
成为一种通用的高级编程语言,在计算机科学领域占有重要地位。
3展了C语言的功能和应用。
C语言基础语法
1 简洁易学
字符型数据类型
用于存储单个字符。可以表 示各种字母、数字和符号。
控制语句
条件语句
使用if、else if和else关键字进行条件判断和分支选择。
循环语句
使用for、while和do while循环结构进行重复执行。
跳转语句
使用break和continue关键字实现跳出循环或继续下一次循环。
函数
1
动态内存分配
使用malloc()和free()函数,实 现动态内存的分配和释放。
文件操作
1 文件的打开和关闭 2 读写文件内容
3 文件指针的位置
使用fopen()函数打开 文件,并在使用完毕 后使用fclose()函数关 闭文件。
使用fprintf()和fscanf() 等函数对文件进行读 写操作。
函数定义和调用
学会定义函数和调用已有的函数,
函数参数和返回值
C语言课件第三章C语言的基本控制结构
XUAN SHANLI
else stat2;
说明: ①书写采取缩进形式, 便于区分。 ②else与最近的if 相匹 配,从内到外。
if(e2#)include <stdio.h>
svtoatid3; main ( void)
else{
stiantt4x; ,y ;
合 称为isf结ca构nf的(“嵌%套d”。, 各&x种);if结构都
void main(void)
后置:先引用后运算。
{
int a=3,b;
XUAN SHANLI
b=a+++a++;
printf(“b=%d”,b);
合 b=++a+(++a);
printf(“b=%d”,b);
}
肥
工 ⒉在逻辑运算中,如果逻辑值能确定,则不需再进行运算。
int a=0,b=0 ++a || b++; /* b的值?*/
}
内层缩进。
举例:求一元二次方程ax2+bx+c=0的根。
XUAN SHANLI
#include <stdio.h>
#include <math.h>
void main(void)
{
float a,b,c,d,e,x1,x2;
scanf(“%f,%f,%f”,&a,&b,&c);
d=b*b-4.0*a*c;
XUAN SHANLI
第三章 C语言的基本控制结构合
肥 工 业 大 学
问题
b*b-4ac<0?
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 顺序结构程序设计
3.1 赋值语句 赋值语句是由赋值表达式再加上分号构成的表达式语句。 赋值语句的一般形式为: 变量=表达式; 赋值语句的功能和特点都与赋值表达式相同。
第3章 顺序结构程序设计
3.2 输入输出函数 C语言要求在使用输入/输出库函数之前必须包含stdio.h文 件。 包含形式如下: #include<stdio.h>
某个语句后,在编译时忽略。
第3章 顺序结构程序设计
3.3 注释 例3.7 计算a、b两数据之和的C程序。
#include<stdio.h>
main() { int a,b,s; printf("a,b=?");
/*定义a,b,s三个整型变量*/ /*主函数*/
scanf("%d,%d",&a,&b); /*读入两个整数,存入变量a和b中*/
A)10,A,10
C)10,a,0
B)16,a,10
D)10,A,0
正确答案:A(知识点:scanf函数的输入格式)
试题分析:当%c处在%d 之后时,输入数据间不能用分隔符,所以m、c、 n经scanf("%d%c%d",&m,&c,&n)重新输入值后,分别为10、A、10。
3.2 输入输出函数 3.2.1 字符数据输入输出函数 2.字符数据输出函数 例3.2 从键盘输入一个字符,在屏幕上显示出来。
#include "stdio.h" main() {
char c;
c=getchar(); putchar(c); } /*从键盘输入一个字符*/ /*在屏幕上显示一个字符*/
输出a,b
printf("a=%d,b=%d\n",a,b);
}
结束
第3章 顺序结构程序设计
3.5 本章考点 •scanf函数的输入格式。 •printf函数的输出格式。 •注释的书写格式。
第3章 顺序结构程序设计
3.6 典型试题详解 1.有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y); 语句使变量x得到数值11,变量y得到数值12,下面四组输入形 式中错误的是________。 A)11 12<回车> C)11,12<回车> B)11,12<回车> D)11,<回车>
97,a
例3.5 #include "stdio.h" main() {
printf("%s,%7.2s\n", "CHINA", "CHINA" );
printf(" %.4s,%-5.3s\n", "CHINA", "CHINA"); } 屏幕显示结果: CHINA,- - - - -CH
CHIN,CHI- (注:-表示空格。)
输出c
结束
第3章 顺序结构程序设计
例3.9 程序: 将键盘上输入的大写字母转换成小写字母输出。
开始
#include<stdio.h>
main() { char c; printf("c=?");
计算c 输入c
scanf("%c",&c);
c=c+32;
/*或c=getchar();*/
输出c
printf("c=%c\n",c); }
s=a+b; printf("s=%d\n",s); }
/*计算a、b两数据之和s的值*/ /*输出和s的值*/
第3章 顺序结构程序设计
3.4 应用举例 例3.8 求一个同学三门功课的平均成绩。
开始
分析:
已知:一个同学三门功课的成绩(用三 个变量a,b,c来存放) 求:该同学的平均成绩(用一个变量v来 存放)
交换a,b
输出a,b
结束
第3章 顺序结构程序设计
例3.10
程序:
从键盘上输入两变量的值,再交换两变量的值输出。
开始
#include<stdio.h>
main() { 输入a,b
int a,b,t;
printf("a=?"); scanf("%d",&a); 交换a,b
printf("b=?");
scanf("%d",&b); t=a,a=b,b=t;
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.2 格式化输入输出函数
1.格式化输出函数
格式: printf(格式控制,输出项表); 功能:将“输出项表”中给出的输出项按“格式控制”中规定的输出格式输 出到标准输出设备。 说明: (1)输出项表中以逗号分隔列出需要输出的项(变量、常量、或表达式)。 (2)格式控制是用双引号括起来的字符串,包括普通字符和格式说明。 普通字符:是需要原样输出的字符(包括转义字符)。 格式说明:由“%“和格式符组成,如%c和%f等,作用是将要输出的数据转 换为指定格式后输出。
符串。包括普通字符和格式说明。
普通字符:是需要原样输入的字符,一般不提倡使用。 格式说明:由%和格式符组成,如%c和%f等,作用是规 定按指定的格式输入数据。
scanf函数中使用的格式字符如表所示。
格式字符 d o x c s f,e hd,ho,hx ld,lo,lx lf,le * 功能 输入十进制整数 输入八进制整数 输入十六进制整数 输入单个字符 输入字符串 输入浮点数(小数或指数形式) 输入短整型(十进制,八进制,十六进制)数据 输入长整型(十进制,八进制,十六进制)数据 输入长浮点型数据(双精度) 表示本输入项在读入后不赋给相应的变量
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.2 格式化输入输出函数
2.格式化输入函数 (3)scanf 中“格式控制”中的格式字符必须与“格式控制”
后的变量的类型匹配。 例如:
int a,b; char d; float w; scanf("%d%o", &a,&b ); scanf("%c", &d ); scanf("%f", &w );
或
#include "stdio.h"
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.1 字符数据输入输出函数 1.字符数据输入函数
格式:getchar()
功能:从键盘上接收输入的一个字符。 例3.1 从键盘输入一个字符,并将其存入字符型变量c 中。
#include "stdio.h" main()
printf函数中使用的格式字符如表所示。
格式字符 d o ox u c f e s ld lo lx lu m格式字符 -m格式字符 m,n格式字符 -m,n格式字符 功能 按十进制形式输出带符号的整数(正数前无+号) 按八进制形式无符号输出(无前导o) 按十六进制形式无符号输出(无前导ox) 按十进制无符号形式输出 按字符形式输出一个字符 按十进制形式输出单、双精度浮点数(默认6位小数) 按指数形式输出单、双精度浮点数 输出以‘\0’结尾的字符串 长整型输出 长八进制整型输出 长十六进制整型输出 按无符号长整型输出 按宽度m输出,右对齐 按宽度m输出,左对齐 按宽度m,n位小数或截取字符串前n个字符输出,右对齐 按宽度m,n位小数或截取字符串前n个字符输出,左对齐
计算v
输入a,b,c
处理:用赋值表达式 v=(a+b+c)/3.0来
计算v的值。 算法用如图所示的流程图表示:
输出v
结束
第3章 顺序结构程序设计
3.4 应用举例 例3.8
程序:
#include<stdio.h> main() { int a,b,c; float v; printf("a,b,c=?"); scanf("%d,%d,%d",&a,&b,&c); v=(a+b+c)/3.0; printf("v=%f\n",v); } 结束 输出v 输入a,b,c
例3.3 #include<stdio.h> main() {
屏幕显示结果:
a=123 a= 123 a=123
int a=123;
long b=135790; printf("a=%d\n",a); printf("a=%4d\n",a); printf("a=%2d\n",a);
b=135790
{ char c;
c= getchar(); }
第3章 顺序ห้องสมุดไป่ตู้构程序设计
3.2 输入输出函数 3.2.1 字符数据输入输出函数
2.字符数据输出函数
格式:putchar(c)
功能:向终端输出一个字符。
说明:(1)c可以是字符型,也可以是整型。
(2)c可以是变量,可以是常量,也可以是表达式。
第3章 顺序结构程序设计
scanf("%d%d", &a,&b );
scanf("%3d%d", &a,&b ); scanf("%d%c%c", &a,&d,&w );
w=‘1’
第3章 顺序结构程序设计
3.3 注释
注释行的作用是增强程序的可读性。
注释行的一般形式: /*注释内容*/ 其中,注释内容是对程序段或程序行的注释说明。 注释行可以作为单独的一行出现在程序中,也可以出现在
3.1 赋值语句 赋值语句是由赋值表达式再加上分号构成的表达式语句。 赋值语句的一般形式为: 变量=表达式; 赋值语句的功能和特点都与赋值表达式相同。
第3章 顺序结构程序设计
3.2 输入输出函数 C语言要求在使用输入/输出库函数之前必须包含stdio.h文 件。 包含形式如下: #include<stdio.h>
某个语句后,在编译时忽略。
第3章 顺序结构程序设计
3.3 注释 例3.7 计算a、b两数据之和的C程序。
#include<stdio.h>
main() { int a,b,s; printf("a,b=?");
/*定义a,b,s三个整型变量*/ /*主函数*/
scanf("%d,%d",&a,&b); /*读入两个整数,存入变量a和b中*/
A)10,A,10
C)10,a,0
B)16,a,10
D)10,A,0
正确答案:A(知识点:scanf函数的输入格式)
试题分析:当%c处在%d 之后时,输入数据间不能用分隔符,所以m、c、 n经scanf("%d%c%d",&m,&c,&n)重新输入值后,分别为10、A、10。
3.2 输入输出函数 3.2.1 字符数据输入输出函数 2.字符数据输出函数 例3.2 从键盘输入一个字符,在屏幕上显示出来。
#include "stdio.h" main() {
char c;
c=getchar(); putchar(c); } /*从键盘输入一个字符*/ /*在屏幕上显示一个字符*/
输出a,b
printf("a=%d,b=%d\n",a,b);
}
结束
第3章 顺序结构程序设计
3.5 本章考点 •scanf函数的输入格式。 •printf函数的输出格式。 •注释的书写格式。
第3章 顺序结构程序设计
3.6 典型试题详解 1.有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y); 语句使变量x得到数值11,变量y得到数值12,下面四组输入形 式中错误的是________。 A)11 12<回车> C)11,12<回车> B)11,12<回车> D)11,<回车>
97,a
例3.5 #include "stdio.h" main() {
printf("%s,%7.2s\n", "CHINA", "CHINA" );
printf(" %.4s,%-5.3s\n", "CHINA", "CHINA"); } 屏幕显示结果: CHINA,- - - - -CH
CHIN,CHI- (注:-表示空格。)
输出c
结束
第3章 顺序结构程序设计
例3.9 程序: 将键盘上输入的大写字母转换成小写字母输出。
开始
#include<stdio.h>
main() { char c; printf("c=?");
计算c 输入c
scanf("%c",&c);
c=c+32;
/*或c=getchar();*/
输出c
printf("c=%c\n",c); }
s=a+b; printf("s=%d\n",s); }
/*计算a、b两数据之和s的值*/ /*输出和s的值*/
第3章 顺序结构程序设计
3.4 应用举例 例3.8 求一个同学三门功课的平均成绩。
开始
分析:
已知:一个同学三门功课的成绩(用三 个变量a,b,c来存放) 求:该同学的平均成绩(用一个变量v来 存放)
交换a,b
输出a,b
结束
第3章 顺序结构程序设计
例3.10
程序:
从键盘上输入两变量的值,再交换两变量的值输出。
开始
#include<stdio.h>
main() { 输入a,b
int a,b,t;
printf("a=?"); scanf("%d",&a); 交换a,b
printf("b=?");
scanf("%d",&b); t=a,a=b,b=t;
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.2 格式化输入输出函数
1.格式化输出函数
格式: printf(格式控制,输出项表); 功能:将“输出项表”中给出的输出项按“格式控制”中规定的输出格式输 出到标准输出设备。 说明: (1)输出项表中以逗号分隔列出需要输出的项(变量、常量、或表达式)。 (2)格式控制是用双引号括起来的字符串,包括普通字符和格式说明。 普通字符:是需要原样输出的字符(包括转义字符)。 格式说明:由“%“和格式符组成,如%c和%f等,作用是将要输出的数据转 换为指定格式后输出。
符串。包括普通字符和格式说明。
普通字符:是需要原样输入的字符,一般不提倡使用。 格式说明:由%和格式符组成,如%c和%f等,作用是规 定按指定的格式输入数据。
scanf函数中使用的格式字符如表所示。
格式字符 d o x c s f,e hd,ho,hx ld,lo,lx lf,le * 功能 输入十进制整数 输入八进制整数 输入十六进制整数 输入单个字符 输入字符串 输入浮点数(小数或指数形式) 输入短整型(十进制,八进制,十六进制)数据 输入长整型(十进制,八进制,十六进制)数据 输入长浮点型数据(双精度) 表示本输入项在读入后不赋给相应的变量
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.2 格式化输入输出函数
2.格式化输入函数 (3)scanf 中“格式控制”中的格式字符必须与“格式控制”
后的变量的类型匹配。 例如:
int a,b; char d; float w; scanf("%d%o", &a,&b ); scanf("%c", &d ); scanf("%f", &w );
或
#include "stdio.h"
第3章 顺序结构程序设计
3.2 输入输出函数 3.2.1 字符数据输入输出函数 1.字符数据输入函数
格式:getchar()
功能:从键盘上接收输入的一个字符。 例3.1 从键盘输入一个字符,并将其存入字符型变量c 中。
#include "stdio.h" main()
printf函数中使用的格式字符如表所示。
格式字符 d o ox u c f e s ld lo lx lu m格式字符 -m格式字符 m,n格式字符 -m,n格式字符 功能 按十进制形式输出带符号的整数(正数前无+号) 按八进制形式无符号输出(无前导o) 按十六进制形式无符号输出(无前导ox) 按十进制无符号形式输出 按字符形式输出一个字符 按十进制形式输出单、双精度浮点数(默认6位小数) 按指数形式输出单、双精度浮点数 输出以‘\0’结尾的字符串 长整型输出 长八进制整型输出 长十六进制整型输出 按无符号长整型输出 按宽度m输出,右对齐 按宽度m输出,左对齐 按宽度m,n位小数或截取字符串前n个字符输出,右对齐 按宽度m,n位小数或截取字符串前n个字符输出,左对齐
计算v
输入a,b,c
处理:用赋值表达式 v=(a+b+c)/3.0来
计算v的值。 算法用如图所示的流程图表示:
输出v
结束
第3章 顺序结构程序设计
3.4 应用举例 例3.8
程序:
#include<stdio.h> main() { int a,b,c; float v; printf("a,b,c=?"); scanf("%d,%d,%d",&a,&b,&c); v=(a+b+c)/3.0; printf("v=%f\n",v); } 结束 输出v 输入a,b,c
例3.3 #include<stdio.h> main() {
屏幕显示结果:
a=123 a= 123 a=123
int a=123;
long b=135790; printf("a=%d\n",a); printf("a=%4d\n",a); printf("a=%2d\n",a);
b=135790
{ char c;
c= getchar(); }
第3章 顺序ห้องสมุดไป่ตู้构程序设计
3.2 输入输出函数 3.2.1 字符数据输入输出函数
2.字符数据输出函数
格式:putchar(c)
功能:向终端输出一个字符。
说明:(1)c可以是字符型,也可以是整型。
(2)c可以是变量,可以是常量,也可以是表达式。
第3章 顺序结构程序设计
scanf("%d%d", &a,&b );
scanf("%3d%d", &a,&b ); scanf("%d%c%c", &a,&d,&w );
w=‘1’
第3章 顺序结构程序设计
3.3 注释
注释行的作用是增强程序的可读性。
注释行的一般形式: /*注释内容*/ 其中,注释内容是对程序段或程序行的注释说明。 注释行可以作为单独的一行出现在程序中,也可以出现在