[工学]C语言学习 第3章
合集下载
编程语言基础-C语言 第3章 分支程序设计

③ 假设A和B是两个表达式,下面对逻辑运 算进行说明。 1) A && B 若A、B均为真, 则“A && B”值为真,否则为 假。 2) A || B 若A、B均为假, 则“A || B值”为假,否则为真。 3) ! A 若A为真, 则 “!A”为假;否则为真。
看下面的例子:
1.
( 3 < 2 ) && ( 7 > 5 ) 值:0 只有 && 右面的子表达式为真 ( 3 < 2 ) || ( 7 > 5 ) 值:1 只要求有一个子表达式为真 !(3<2) 子表达式为假。 值:1
运行结果: 1. 请输入一个正 整数:36↙ Yes! 2. 请输入一个正 整数:15↙ No!
3.2.3 if语句的嵌套
一般形式是: if(表达式1) 语句1; else if(表达式2) 语句2; else if (表达式3) 语句3; else 语句4;
执行过程如图3-4所示。
表达式 1 假 表达式 2 假
}
3.4 分支程序设计应用实例
例3-7: 从键盘输入二个整数,输出其中最大者。 main( ) { int a, b, max; printf("请输入二个整数:"); scanf("%d %d", &a, &b ); if ( a > b ) max = a; else max = b; printf("二者中最大值为:%d", max ); getch( ); 运行结果: } 17 31↙ 二者中最大值为:31
第3章 分支程序设计
3.1 关系表达式和逻辑表达式
C语言程序设计实用教程第3章精品PPT课件

例如:#include<stdio.h>
#include <math.h> 这里的#include是编译预处理命令,其作用是将某个已经存在的文件 包含到程序中来。包含了头文件”stdio.h”才能调用标准输入输出函数; 包含了”math.h”才能调用数学函数。考虑到printf和scanf函数使用频 繁,系统允许使用这两个函数时可不加#include命令。 ② 库函数调用规则
?
6
第三章 顺序结构程序设计
3.1.1 控制语句
if~else~语句 选择分支语句 switch语句
结构化语句
while语句
控制语句
循环语句 do-while语句 for语句
非结构化语句
continue语句 限定转向语句 break语句
return语句
?
C语句
控制语句
if( ) ~ else ~ switch for ( ) ~ while ( ) ~ do ~ while( ) continue
break
goto
return
if (x>y) z=x;
else z=y;
a=3;
表达式语句 由表达式加一个分号构成一个语句。
复合语句
由{ }将一些语句括起来。
重点与难点:
各种数据类型的输入和输出格式控制。
11.10.2020
C语言程序设计
1
第三章 顺序结构程序设计
第三章 顺序程序设计
3.1 C语句概述 3.1.1 控制语句 3.1.2 表达式语句 3.1.3 复合语句
3.2 数据的输入与输出 3.2.1 字符输入输出函数 3.2.2 格式输出函数 3.2.3 格式输入函数
#include <math.h> 这里的#include是编译预处理命令,其作用是将某个已经存在的文件 包含到程序中来。包含了头文件”stdio.h”才能调用标准输入输出函数; 包含了”math.h”才能调用数学函数。考虑到printf和scanf函数使用频 繁,系统允许使用这两个函数时可不加#include命令。 ② 库函数调用规则
?
6
第三章 顺序结构程序设计
3.1.1 控制语句
if~else~语句 选择分支语句 switch语句
结构化语句
while语句
控制语句
循环语句 do-while语句 for语句
非结构化语句
continue语句 限定转向语句 break语句
return语句
?
C语句
控制语句
if( ) ~ else ~ switch for ( ) ~ while ( ) ~ do ~ while( ) continue
break
goto
return
if (x>y) z=x;
else z=y;
a=3;
表达式语句 由表达式加一个分号构成一个语句。
复合语句
由{ }将一些语句括起来。
重点与难点:
各种数据类型的输入和输出格式控制。
11.10.2020
C语言程序设计
1
第三章 顺序结构程序设计
第三章 顺序程序设计
3.1 C语句概述 3.1.1 控制语句 3.1.2 表达式语句 3.1.3 复合语句
3.2 数据的输入与输出 3.2.1 字符输入输出函数 3.2.2 格式输出函数 3.2.3 格式输入函数
c语言第03章

活期存款一年后本息和为: p1=p0(1+r1) 一年期定期存款,一年后本息和为: p2=p0(1+r2) 两次半年定期存款,一年后本息和为:
r3 r3 p3 = p0(1 + )(1 + ) 2 2
6
3.1顺序程序设计举例
算法:
输入p0,r1,r2,r3的值 计算p1=p0(1+r1) 计算p2=p43; r 3 )
2 2
输出p1,p2,p3
7
3.1 顺序程序设计举例
#include <stdio.h> 定义变量同时赋予初值 int main ( ) {float p0=1000, r1=0.0036,r2=0.0225, r3=0.0198, p1, p2, p3; p1 = p0 * (1 + r1); p2 = p0 * (1 + r2); p3 = p0 * (1 + r3/2) * (1 + r3/2); printf(”%f\n%f\n%f\n”,p1, p2, p3); return 0; }
\„ \ddd \“ 单引号 例 void main() { printf(“Y\b=\n”);\xhh 3位8进制数代表的字符 aaa }
转义字符:反斜线后面跟一个字符或一个代码值表示
<
双引号 运行结果: 2位16进制数代表的字符 屏幕显示:= 15 打印机输出:¥
C语言程序设计
第3章 最简单的C程序设计
19
C语言程序设计
第3章 最简单的C程序设计
3.2.3不同类型数据间的转换
1.隐式转换
什么情况下发生
运算转换------不同类型数据混合运算时 赋值转换------把一个值赋给与其类型不同的变量时 输出转换------输出时转换成指定的输出格式
C语言教程第3章简单的C程序设计PPT课件

10
C语言大学实用教程
3.4 基本输入/输出操作的实现
附 # include <stdio.h>
例 main()
{ char a='B',b='o',c='k';
putchar(a);putchar(b);putchar(b);
putchar( c);putchar('\t');
putchar(a);putchar(b); 运行结果:
C语言大学实用教程
第3章 简单的C程序设计
23.11.2020
1
C语言大学实用教程
第3章 简单的C程序设计
本章主要教学内容 C语句分类 字符输入/输出函数 格式输入/输出函数
23.11.2020
2
C语言大学实用教程
3.1 C语句分类
变量声明语句
int x, y;
表达式语句
i++;
i = i + 1;
printf("Press a key and then press Enter:");
ch = getchar(); printf("You pressed "); putchar(ch); putchar('\n'); }
Press a key and then press Enter: A↙
You23.1p1r.2e0s20sed A
4
C语言大学实用教程
3.3 复合语句和空语句的作用
在什么情况下使用复合语句?
条件语句和循环语句在语法上只允许带一条 语句 当分支和循环中需要进行多项操作时
{
C语言程序设计第3章 选择结构流程和应用

2 单分支和双分支选择结构程序设计
简单if语句 if-else语句 条件运算符与条件表达式
简单if语句
学一学 简单if语句的形式为: if ( 条件表达式 ) 语句
其流程图如图3-1所示。语句的执 行过程是先计算“条件表达式”, 若值为“真”,则执行“语句”; 否则什么也不做。此处的“语句” 可以是简单语句,也可以是用一对 大括号“{ }”括起来的复合语句。
本章内容中我们将学习 1 选择结构判定条件的构成 2 单分支与双分支选择结构程序设计 3 多分支选择结构程序设计
1 选择结构判定条件的构成
关系运算符与关系表达式 逻辑运算符与逻辑表达式
关系运算符
关系运算是对两个操作数之间进行比较的运算符,其 运算结果为逻辑值(或称“布尔”值,boolean) “真”或“假”。 C语言中提供六种关系运算符,如 表3-1所示。
条件
Y
N
语句
试一试
问题3.4 从键盘输入一个数,输出其绝对值。 解题步骤 1.定义变量二个int变量iX,iY,其中iX用来接收 用户从键盘输入的数据,iY用来存放iX的绝对值。 2.从键盘输入一个整数放iX; 3.把iX放iY; 4.正数的绝对值是正数本身,负数的绝对值是其 相反数。所以,如果iX<0,则iY= -iX,否则不 需要做什么; 5.输出iX和iY。
练一练
问题:小明去参加一个同学的生日聚会, 同学的家长规定18岁以上的才可以饮酒, 所以需要编一程序根据输入的年龄打印一 张饮酒卷,使的能饮酒的同学可以获取饮 酒卷。
if-else语句
学一学 if-else语句是标准的if语句。 用来实现双分支选择结构, 其一般形式为: if ( 条件 ) 语句1; else 语句2;
《c语言第三章》课件

2 比较运算符
用于比较两个值的大小关系,返回布尔值(真或假)。
3 逻辑运算符
用于连接两个或多个条件,判断复合条件是否成立,返回布尔值。
条件控制语句
if语句
根据条件判断是否执行某段代码块,可以包含多个嵌套的if语句。
switch语句
根据表达式的值选择执行不同的代码块,可以使用多个case和default语句。
《c语言第三章》PPT课 件
这是一份关于《c语言第三章》的PPT课件。课件将重点介绍C语言数据类型、 变量和常量、运算符和表达式、条件控制语句以及循环控制语句的内容。
课件概述
1 目标和重点
2 结构和内容概要
第三章的目标是让学生掌握C语言的基本数据 类型、变量和常量的使用,以及条件和循环 控制语句的应用。
循环控制语句
1
while循环
当条件为真时,重复执行一段代码块,
for循环
2
循环开始前先判断条件是否成立。
指定循环的初始条件、循环条件和循环
结束后的操作,自动进行迭代。
3
do-while循环
先执行一次代码块,再判断条件是否成 立,满足条件则继续循环。
课件按照数据类型、变量和常量、运算符和 表达式,以及控制语句的顺序组织,内容涵 盖了基Hale Waihona Puke 知识和实际应用。C语言数据类型
基本数据类型
包括整型、浮点型和字符型,用于存储不同类型的数据。
派生数据类型
通过基本数据类型组合和修改得到的数据类型,如数组、指针和结构体。
枚举数据类型
用于定义一组常量,可以用于表示某种状态或特定的取值范围。
变量和常量
1 变量声明和定义
在使用变量之前,需要先声明或定义变量,确定数据类型和变量名。
用于比较两个值的大小关系,返回布尔值(真或假)。
3 逻辑运算符
用于连接两个或多个条件,判断复合条件是否成立,返回布尔值。
条件控制语句
if语句
根据条件判断是否执行某段代码块,可以包含多个嵌套的if语句。
switch语句
根据表达式的值选择执行不同的代码块,可以使用多个case和default语句。
《c语言第三章》PPT课 件
这是一份关于《c语言第三章》的PPT课件。课件将重点介绍C语言数据类型、 变量和常量、运算符和表达式、条件控制语句以及循环控制语句的内容。
课件概述
1 目标和重点
2 结构和内容概要
第三章的目标是让学生掌握C语言的基本数据 类型、变量和常量的使用,以及条件和循环 控制语句的应用。
循环控制语句
1
while循环
当条件为真时,重复执行一段代码块,
for循环
2
循环开始前先判断条件是否成立。
指定循环的初始条件、循环条件和循环
结束后的操作,自动进行迭代。
3
do-while循环
先执行一次代码块,再判断条件是否成 立,满足条件则继续循环。
课件按照数据类型、变量和常量、运算符和 表达式,以及控制语句的顺序组织,内容涵 盖了基Hale Waihona Puke 知识和实际应用。C语言数据类型
基本数据类型
包括整型、浮点型和字符型,用于存储不同类型的数据。
派生数据类型
通过基本数据类型组合和修改得到的数据类型,如数组、指针和结构体。
枚举数据类型
用于定义一组常量,可以用于表示某种状态或特定的取值范围。
变量和常量
1 变量声明和定义
在使用变量之前,需要先声明或定义变量,确定数据类型和变量名。
c语言计算机编程第3章

输入指定宽度的数据 输入:123456 结果:123 =>a 456 =>b scanf(“%3d%3d”,&a,&b); %后的“*”附加说明符,用来表示跳过它相应的数据。 输入:12□345□67 scanf(“%2d %*3d %2d”,&a,&b);
结果:12=>a 67=>b
3.2 数据输入
3.2 数据输出
⒌c格式符 用来输出一个字符。 说明: 一个整数(0~255)可以用%c的形式按字符输出。 一个字符数据也可以用整数形式输出。 可以指定输出字符的宽度。%mc 6.f格式符 用来输出实数,以小数形式输出。有以下几种用法∶ ①%f,不指定字段宽度,由系统自动指定,使整数部分全部 输出,并输出6位小数。注意:并非全部数据都是有效数字,单 精度实数的有效位数一般为7位,双 精度有效位数为15位。
3.2 数据输出
⒋u格式符 用来输出unsigned型数据,即无符号数,以十进制形式输出。 一个有符号整数也可以用%u格式输出; 反之,一个unsigned也可以用%d、%o、%x格式输出。按相 互赋值的规则处理。 main() { unsigned int a=65535; int b=-2; printf(“a=%d,%o,%x,%u\n”,a,a,a,a); printf(“a=%d,%o,%x,%u\n”,b,b,b,b); } 运行结果:-1,177777,ffff,65535 -2,177776,fffe,65534
3.2 数据输出
8.g格式符 用来输出实数,它根据数值的大小自动选择f格式或e格式, 且不输出无意义的0。 若f=123.4 则 printf(“%f□□%e□□%g”,f,f,f); 输出:123.400002□□1.23400e+02□□123.4
C语言第3章ppt课件

a 12
注意:对变量值的存取是通过变量名实现的
20/100
长春信息技术职业学院---CJ语il言in 程Un序iv设er计sity
第三章 基本
3.3 C语言3种的数据类型 程序语句
例.整型数据的溢出
main
{
int a,b;
运行结果为:
a=32767; b=a+1;
32767,-32768
printf("%d,%d",a,b);
#include <studio.h>
#define PI 3.14 /*定义符号常量*/
main() {
习惯上符号常量名用大写
float l,s;
3.1415926
l = 2* 3P.1I4 *6;
#define PI 3.1415926
s = 3P.1I4 *6*6;
使用符号常量的优点:
printf(“l=%f,s=%f”,l,s); }
二、实型数据
1、实型常量
实数又称为浮点数,有两种表达方式: (1)小数表示法 如:0.123、123.0 (2)科学记数法 如:123e3或123E3、123E-2
注意 小数点不能单独出现; 0.√ .0 √ . e或E的两边必须有数,且其后面必须为整数; 如: 6E0.2 e5
24/100
长春信息技术职业学院---CJ语il言in 程Un序iv设er计sity
int num,total;
num = 10;
total =num*PRICE;
printf("total=%d", total);
}
注意:不可以对符号常量进行赋值!
10/100
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
26
(4) 空语句。下面是一个空语句: ; 即只有一个分号的语句,它什么也不做。有时用来做被转向 点,或循环语句中的循环体(循环体是空语句,表示循环体什 么也不做)。 (5) 可以用{}把一些语句括起来成为复合语句,又称分程序。 如下面是一个复合语句。 { z=x+y; t=z/100; printf("%f",t); }
6
定义变量p保存乘积同时也是被乘数,i为乘数 s1: p=1 s2: i=2 s3: p=p×i s4: i=i+1 s5: 当i<=5时,返回s3继续执行;否则输出p的值后结束。 可以看出,用这种方法表示的算法具有通用性、灵活性。 S3到S5组成一个循环,在实现算法时,要反复多次执行S3、 S4、S5等步骤,直到某一时刻,执行S5步骤时经过判断,乘 数i已超过规定的数值而不返回S3步骤为止。此时算法结束, 变量p的值就是所求结果。 由于计算机是高速进行运算的自动机器,实现循环是轻 而易举的,所有计算机高级语言中都有实现循环的语句。因 此,上述算法不仅是正确的,而且是计算机能实现的较好的 算法。 7
第3章 最简单的C程序设计— 顺序程序设计
1
本章教学目的和要求
1. 了解算法的概念、特点 。 2. 掌握用流程图和N-S结构图表示算法的方法。熟 悉程序的三种基本结构。 3. 熟悉C语句的类型。 4. 掌握赋值语句的语法格式和应用。 5. 掌握输入函数的使用。 6. 掌握输出函数的使用。 7. 熟悉顺序结构的程序特点。
5
简单算法举例
求:1×2×3×4×5 求解步骤: 步骤1:先求1×2得2; 步骤2:再将2×3得6; 步骤3:将6×4得24; 步骤4:将24×5得120,输出结果。 这样的算法虽然是正确的,但太繁琐。如果要求 1×2×…×1000,则要写999个步骤,显然是不可取的。而 且每次都直接使用上一步骤的数值结果(如2,6,24等),也 不方便。
2
3.1 算法
3
关于算法
一个程序应包括以下两方面内容: (1) 对数据的描述。在程序中要指定数据的类型和数据的组 织形式,即数据结构(data structure)。 (2) 对操作的描述。即操作步骤, 也就是算法(algorithm)。 数据是操作的对象,操作的目的是对数据进行加工处理, 以得到期望的结果。
怎样表示一个算法
自然语言描述。就是用人们日常使用的语言对算法进行 描述。用自然语言描述通俗易懂,但文字冗长,容易出现 “歧义”。
8
流程图
流程图。用一些约定的框图表示操作,用带箭头的线表 示执行顺序。 Y A B A P N B
9
P Y 循环体 Y N
循环体
P
N
10
11
开始
p=1 i=2 p=p*i i=i+1 Y i<=5 Y
24
⑥ break (中止执行switch或循环语句) ⑦ switch (多分支选择语句) ⑧ goto (转向语句) ⑨ return (从函数返回语句) 上面9种语句中的括号()表示其中是一个条件,~表示内 嵌的语句。
25
(2) 函数调用语句。由一次函数调用加一个分号构成一个语 句,例如:printf("this is a c statement."); (3) 表达式语句。 由一个表达式构成一个语句,最典型的 是,由赋值表达式构成一个赋值语句。 a=3 是一个赋值表达式,而 a=3; 是一个赋值语句。可以看到一个表达式的最后加一个分号就 成了一个语句。一个语句必须在最后出现分号,分号是语句 中不可缺少的一部分。
数据结构 + 算法 = 程序
4
算法的概念
算法是程序中进行操作的方法和操作步骤,它解决“做 什么”和“怎么做”的问题。程序中的操作语句就是算法的 体现。 对同一个问题,可以有不同的解题方法和步骤。方法有优劣 之分。有的方法只需进行很少的步骤,而有些方法则需要较 多的步骤。一般说,希望采用简单的和运算步骤少的方法。 计算机算法可分为两大类别:数值算法和非数值算法。 数值运算的目的是求数值解 。非数值运算包括的面十分广泛, 最常见的是用于事务管理领域。
15
伪代码
伪代码是一种介于程序设计语言和自然语言间的一种算 法描述方式。其书写语阅读都需要一定的程序设计语言基础。
16
3.2 程序的三种基本结构
17
结构化程序的基本控制结构: • 顺序结构。按语句书写顺序执行。 • 选择(判断)结构。程序执行到某一条语句时,要进行判断, 从两种以上路径中选择一条执行。 • 循环(重复)结构。将一条或多条语句重复执行若干遍。
27
3.4 赋值表达式和赋值语句
28
“=”构成的表达式叫赋值表达式,若赋值表达式后加上 “;”就叫赋值语句。 赋值表达式格式: 变量=表达式 赋值类运算符还包括10个复合运算符。其特点同赋值运 算符。
开始
p=1 i=2 i<=5 N
p=p*i N
i=i+1 输出p
输出p 结束
结束
12
N-S图
一种简化了的流程图。省却了箭头线。
A B C Y A
P
N B
13
当P成立循环体Fra bibliotek循环体
直到P成立
14
p=1 i=2 p=p*i i=i+1 i<=5 输出P
p=1 i=2 i<=5 p=p*i i=i+1 输出P
18
流程图
流程图。用一些约定的框图表示操作,用带箭头的线表 示执行顺序。 Y A B A P N B
19
P Y 循环体 Y N
循环体
P
N
20
3.3 C语句综述
21
和其他高级语言一样,C语言的语句用来向计算机系统 发出操作指令。一个语句经编译后产生若干条机器指令。一 个实际的程序应当包含若干语句。应当指出,c语句都是用 来完成一定操作任务的。声明部分的内容不应称为语句。 一个函数包含声明部分和执行部分,执行部分即由语句 组成。C程序结构可以用图4.1表示。即一个c程序可以由若干 个源程序文件(分别进行编译的文件模块)组成,一个源文件 可以由若干个函数和预处理命令以及全局变量声明部分组成, 一个函数由数据定义部分和执行语句组成。
22
23
C语句可以分为以下5类
(1) 控制语句,完成一定的控制功能。C只有9种控制语句, 它们是: ① if( )~else~ (条件语句) ② for( )~ (循环语句) ③ while( )~ (循环语句) ④ do~while( ) (循环语句) ⑤ continue (结束本次循环语句)