C语言程序设计第三章 顺序结构程序设计
C语言程序设计 第三版 第3章 顺序结构程序设计
a b
(b) N-S结构化流程图
5
返回本章首页
3.2 用流程图表示三种基本结构
2.选择结构
6
返回本章首页
3.2 用流程图表示三种基本结构
3.循环结构
1)当型循环(while型循环) (1)先判断后执行的当型循环 (2)先执行后判断的当型循环
2)直到型循环(until型循环) (1)先判断后执行的直到型循环 (2)先执行后判断的直到型循环
2.结构化程序的设计方法
1)自顶向下、逐步细化 2)模块化
2
返回本章首页
3.2 用流程图表示三种基本结构
✓ 算法的传统流程图是用特定的几何图形及 指向线表示解决问题的方法及步骤。
➢ 圆角矩形为输入输出框 ➢ 矩形为处理框 ➢ 菱形为判断框 ➢ 带箭头的流程线 ➢ 框内外必要的文字说明。
3
返回本章首页
3.循环结构
2)直到型循环(until型循环)
11
返回本章首页
3.2 用流程图表示三种基本结构
4.流程图较
(1)N-S结构化流程图省略了指向线,结构比较 清晰,特别适合于表示一个结构化的算法,能 够方便地用于结构化程序设计。
(2)对同一循环问题进行处理时,当型循环和直 到型循环条件正好相反,也就是说,完全可以 将直到型循环转换为当型循环,所以在C程序中 仅介绍当型循环。
1.赋值语句的定义及格式
1)定义 赋值语句是由赋值表达式末尾加分号构成的语 句。
2)格式 变量=表达式;
3)功能 赋值语句的功能和特点都与赋值表达式相同。
18
返回本章首页
3.4 赋值语句
2.赋值语句使用注意事项
1)在赋值符右边的表达式也可以又是一个赋值表 达式
06c语言程序设计教案程序的控制结构—顺序结构
06c语言程序设计教案程序的控制结构—顺序结构int a=-1;printf(“%d,%o”,a,a);输出结果为:-1,177777这是因为-1在内存中以补码形式存放(见图3-2)。
八进制数为从低位开始,以三位一组划分为一个八进制数。
3)x格式符。
以十六进制数无符号形式输出整数。
例如:int a=-1;printf(“%x,%o,%d”,a,a,a);输出结果为:ffff,177777,-1十六进制数为从低位开始,见图3-2,以四位一组划分为一个数。
4)u格式符。
以十进制数无符号形式输出整数。
一个有符号的(int)型数据能够用%d格式输出,也能够用%u格式输出。
要注意两类数据的取值范畴大小。
例如:无符号数据的输出。
main(){unsigned int x=65535;int y=-1;printf(“x=%d,%o,%x,%u\n”,x,x,x,x);printf(“y=%d,%o,%x,%u\n”,y,y,y,y);}运行结果为:x=-1,177777,ffff,65535y=-1,177777,ffff,65535即-1的二进制形式以无符号形式输出时为整数65535。
5)c格式符。
用来输出一个字符。
例如:char x=’A’;printf(“%c,%d\n”,x,x);运行结果为:A,65能够看出,一个范畴在0~255的整数,既能够用%d格式输出,也能够用%c格式输出。
输出该整数或者整数对应ASCII的字符。
6)s格式符。
用来输出一个字符串,该格式有以下用法:①%s例如:printf(“%s”,”HELLO”);运行结果为:HELLO②%±ms,假如%ms字符串的实际宽度小于m,右对齐,左端补空格,%-ms,字符串左对齐,右端补空格;否则,不受m限制,输出实际宽度。
③%±m.ns,若%m.ns取字符串左端n个字符,输出在m列的右端,左端补空格;%-m.ns,取字符串左端n个字符,输出在m列的左侧,右侧补空格;若m<n,则m自动取n 值输出n个字符。
第3章 顺序结构程序设计
[例3.9] 格式控制字符 的使用 例 格式控制字符d的使用 #include “stdio.h” main() {int num1=123; long num2=123456; printf("num1=%d,num1=%5d,num1=%-5d,num1=%2d\n", num1,num1,num1,num1); printf("num2=%ld,num2=%8ld,num2=%5ld\n",num2,num2,num2); printf("num1=%ld\n",num1); } 程序运行结果如下: num1=123,num1=□□123,num1=123□□,num1=123 num2=123456,num2=□□123456,num2=123456 num1=16908411(长整型输出时,高16位为随机值) 位为随机值) (长整型输出时, 位为随机值
22
[例3.10] 格式控制字符 的使用 例 格式控制字符s的使用 #include “stdio.h” main( ) {printf("%s,%5s,%-10s","Internet","Internet","Internet"); printf("%10.5s,%-10.5s,%4.5s\n","Internet","Internet","Internet"); } 程序运行结果如下: Internet,Internet,Internet□□,□□□□□Inter,Inter□□□□□,Inte r 注意:系统输出字符和字符串时,不输出单引号和双引号。 注意
A
B
《C语言程序设计及应用》课件第3章顺序结构程序设计
C语言程序设计及应用
第 3章
3.1 顺序结构的设计思想
目录 上一页 下一页 退出
本题的程序如下:
main() {
int a,b,result; scanf("%d, %d",&a,&b); result=a-b; printf("a-b=%d",result); }
C语言程序设计及应用
第 3章
3.2.2 标准的输入输出
目录 上一页 下一页 退出
【例3-7】 main() { char a,b; printf("input character a,b\n");
scanf(“%c%c”,&a,&b);
/*scanf函
数"%c%c"中没有空格*/
printf("%c%c\n",a,b);
第 3章
3.2.2 标准的输入输出
目录 上一页 下一页 退出
【例3-13】程序运行结果如下图所示。
C语言程序设计及应用
第 3章
3.2.2 标准的输入输出
目录 上一页 下一页 退出
4. getchar函数(字符输入函数) getchar 函 数 的 功 能 是 从 键 盘 上 输
入一个字符。其一般形式为: getchar(); 通常把输入的字符赋予一个字符变量,
C语言程序设计及应用
第 3章
3.2.2 标准的输入输出
目录 上一页 下一页 退出
1. printf函数(格式输出函数)
printf函数称为格式输出函数, 其关键字最末一个字母f即为“格式” (format)之意。其功能是按用户 指定的格式,把指定的数据输出到 显示器屏幕上。
C语言程序设计第3章 顺序结构编程2018版
类型 变量长度(单位:字节) 数值范围
short int
2
-215 ~ 215-1
4
-23311 ~ 23311-1
long
unsigned short
unsigned int
unsigned long
4
-231 ~ 231-1
2
0 ~ 216-1
4
0 ~ 232-1
4
0 ~ 232-1
➢ 整型常量三种形式
例:total = money*num; int money=10, num=10;
注:int money=num=10;
3.2.3 赋值语句
➢ 复合赋值运算符 a += b 等价于 a = a + b a -= b 等价于 a = a – b a *= b 等价于 a = a * b a /= b 等价于 a = a / b a %= b 等价于 a = a % b
案例二:共享单车费用程序运行结果
案例三:孩子身高预测
问题描述:孩子的身高可以利用遗传因素 即利用父母的身高进行预测。女儿身高计 算公式为:女儿成人时的身高=(父高× 0.96 + 母高)÷2 (注:此方法未考虑环 境因素的影响)。
精品课件-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语言程序设计第3章顺序结构程序设计简明教程PPT课件
运行结果:
C语言程序设计
a=65535,(0)177777,(0x)ffff,65535 b=-1, (0)37777777777,(0x)ffffffff,4294967295
第3章 顺序结构程序设计 11
二、实型数据的输出
%f格式符用来输出实数(单精度、双精度),以小数形式输出。
①%f: 表示输出的实数,是以小数的形式输出。虽没指定输 出数据位数的宽度。由于系统自动约定,整数部分全部输出, 并输出6位小数。
C语言程序设计 第3章 顺序结构程序设计 9
三、x格式符
x格式符:数据以十六进制的形式输出,数值不带符号,
即将符号位也作为十六进制的一部分输出。 【例3.2】将一个整数分别以十进制、八进制、十六进制的 格式输出。 #include <stdio.h> int main() { int b=-1; printf("%d,%o,%x\n",b,b,b); return 0; } 运行结果: -1,37777777777,ffffffff
②%m.nf: 指定输出的数据共占的位数为m,其中有n位小数 ,如果数值的位数小于m,则左端补空格。
③%lf:表示输出双精度实数。
C语言程序设计
第3章 顺序结构程序设计
12
【例3.4】 输出实数的有效位数。 #include <stdio.h> int main() { float y=564123.41111; printf("y=%f\n",y); return 0; } 运行结果: y=564123.437500
C语言程序设计
第3章 顺序结构程序设计
6
②%md:m为输出数据的宽度。 若输出项的实际位数小于m值,则以右对齐,不够的位数 以左补空格凑齐;
第三章 顺序结构程序设计
步骤1:0 => s; 步骤2:1 => I; 步骤3:s+i => s; 步骤4:i+1 => I; 步骤5:如果i≤1000,转到步骤3,否则结束。 在上面的算法中,符号s、i表示变量,符号“=>” 表示给变量赋值。步骤1和步骤2表示给变量s和i 赋初始值为0和1;步骤3将变量i的当前值累加到 变量s中;步骤4使变量i在原值的基础上增加1; 步骤5判断i的值如果小于等于1000,重复做步骤 3和步骤4,构成一个循环,而当i的值不小于等于 1000时,循环结束,这时,变量s的值就是要求 的计算结果。
2.函数调用语句 函数调用语句由一次函数调用加一个分号(语句结 束标志)构成。例如: printf("This is a C Program."); 3.表达式语句 表达式语句由表达式后加一个分号构成。 表达式能构成语句是C语言的一大特色。最典型的 表达式语句是在赋值表达式后加一个分号构成的赋值 语 句 。 例 如 , “ num=5” 是 一 个 赋 值 表 达 式 , 而 “num=5;”却是一个赋值语句。
3.3 格式化输出函数printf()
程序运行中,有时候需要从外部设备(例如键盘)上得 到一些原始数据,程序计算结束后,通常要把计算结果发 送到外部设备(例如显示器)上,以便人们对结果进行分析。 我们把程序从外部设备上获得数据的操作称为“输入”, 而把程序发送数据到外部设备的操作称为“输出”。 不像其他的高级语言,C语言没有专门的输入/输出语 句,输入/输出的操作是通过调用C语言的库函数来实现的。 printf()函数是最常用的输出函数,它的作用是向计算机系 统默认的输出设备(一般指显示器)输出一个或多个任意指 定类型的数据。
3.1.2 算法的特征 通常,一个算法必须具备以下五个基本特征: (1) 有穷性。一个算法必须在它所涉及的每一种情 形下,都能在执行有限次的操作之后结束。 (2) 确定性。算法的每一步,其顺序和内容都必须 严格定义,而不能有任何的歧义。 (3) 有零个或多个输入。输入是算法实施前需要从 外界取得的信息,有些算法需要有多个输入,而有些 算法不需要输入,即零个输入。 (4) 有一个或多个输出。输出就是算法实施后得到 的结果,显然,没有输出的算法是没有意义的。 (5) 可行性。算法的每一步都必须是可行的,也就 是说,是能够由计算机执行的。
第03章顺序结构程序设计PPT课件
例3-1:
程序运行结果
a=11 b=21 c=31
#include "stdio.h" void main()
a=11 b=22 c=3.300000 a=22 b=21 c=31
{int a=11,b=21,c=31;
printf("a=%d\tb=%d\tc=%d\n",a,b,c);
(2)为了完成某项任务,而不是为了得到返 回值。
调用这类函数时,就直接用函数调用语句。 例: scanf("%f",&x);
printf("%f",x);
第三章 3.1 C语句概述
3.1.2 复合语句
一对大括号{ }包围若干条语句组成。 格式:
{[ 数据说明部分;] 执行语句部分;
}
注意:
(1) 在复合语句中的“内部数据描述语句”中定义的变量,是 局部变量, 仅在复合语句中有效。 (2) 复合语句结束的“ } ”之后,不需要分号。 (3) 复合语句可以出现在任何数据操作语句可以出现的地方。
3.2.3 循环结构
1. 当型循环结构
当条件成立(为“真”或 非0)时,反复执行程序 段Aபைடு நூலகம்否则不执行程序段 A。
假 条件 (0) 真(非
0) A
第三章 3.2 程序的三种基本结构
2. 直到型循环结构
先执行程序段A,再判断 条件是否为“真”(非0 );若为“真”(非0) ,再执行A,如此反复, 直到条件为“假”(0) 为止。
C语言的语句分类:
简单语句
表达式语句(表达式;) 函数调用语句(函数名(参数表);
C语言 数据操作 语句
C语言学案(三、顺序结构程序设计)
C语⾔学案(三、顺序结构程序设计)课题3-1:顺序结构程序设计(1)——基本语句与字符输⼊输出、printf函数【知识⽬标】1.了解C语句的分类、数据输⼊输出的概念;2.掌握pritnf()格式输出函数;3.掌握字符数据的输⼊输出函数getchar()和putchar()。
【技能⽬标】1.能阅读各种格式printf的程序,并计算出数据输出的结果。
【学习⽅法】⼩组协作、⾃主探究、展⽰交流、任务驱动【学习环境】多媒体教室【学习过程】⼀、创设情境,激趣导⼊在程序中,常量、变量、运算符、表达式是构成程序的基本要素,从本章开始将深⼊介绍如何将这些基本要素有效地组合在⼀起,构成合法有意思的程序。
顺序结构是结构化程序设计中最简单、最常⽤的基本结构,也是任何应⽤程序的主体结构。
⼆、明确⽬标,⾃主学习预习教材P50-P55的内容,完成以下预习题。
1.C语⾔中语句分为简单语句、结构语句。
简单语句有____________、____________、____________、____________、____________、_____________、_____________,结构语句有____________、____________、____________。
2.字符数据的输⼊函数有_____________、_____________、_____________。
字符数据的输出函数有_____________。
3.printf函数的⼀般形式__________________________,格式控制字符串由格式字符串和_____________组成。
格式字符串以%开头,⼀般形式为__________________________。
参数列表中可给出各个输出项,输出项之间⽤_________分隔。
要求格式控制字符串和各输出项在数量和类型上应该⼀⼀对应。
输出项可以是__________、__________,甚⾄是表达式。
第3章 最简单的C程序设计—顺序结构程序设计
②直到型(Until型)循环结构 如(b)图,它的功能是先执 行A框,然后判断给定的p2条件是 否成立,如果p2条件丌成立,则 再执行A,然后再对p2条件作判断, 如果p2条件仍然丌成立,又执行 A….如此反复执行A,直到给定的 p2条件成立为止,此时丌再执行A, 从b点脱离本循环结构。
三种基本结构的共同特点:
4、空诧句:
组成:只由一个“;”构成,在程序中空诧句 可用来作流程的转向点或循环诧句中的空循环体。 程序执行时空诧句丌产生仸何动作。程序设计中 有时需要加一个空诧句来表示存在一条诧句,但 随意加分号也会导致逻辑上的错诨,需要慎用。 例如: while(getchar()!=‘\n’);/*本诧句的
/*表达式值为5,a,b,c值为5*/ /* b=5;a=5 */ /*表达式值11,c=6,a=11 */ /*表达式值10,a=10,b=4,c=6 */ /*表达式值5,a=5,b=10,c=2 */
/* a=-264 等价于a=a+(a=a-(a*a)) */
例: int a=2; a%=4-1; /* a=0 a+=a*=a-=a*=3; 等价于a=a+(a=a*(a=a-(a=a*3))) */
第3章 最简单的C程序设计 ——顺序结构程序设计
3.1 程序的三种结构
1966年,Bohra和Jacopini提出了以下三种 基本结构:顺序结构、选择结构、循环结构,用 这三种基本结构作为表示一个良好算法的基本单 元。 (1)顺序结构:
如右图,虚线框内是一个顺序结构。 其中A和B两个框是顺序执行的。即在执行 完A框所指定的操作后,必然接着执行B框 所指定的操作。顺序结构是最简单的一种 基本结构。
功能是,只要从键盘输入的字符丌是回车则重新输入。这 里的循环体为空诧句,什么也丌做。*/
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
格式字符
以十六进制形式输出int或unsigned int型整数的机器 码
以小数形式输出单精度浮点型数据 以指数形式输出单精度浮点型数据
字符型
字符串
%c
%s
输出单个字符
输出字符串
Page 7
3.2 常用库函数使用
输出函数 2.格式输出函数
表3-2
格式修饰符 0 # m
printf( )函数中常用的格式修饰符
据。函数的功能是向标准输出设备输出实参表示的字符。
Page 5
3.2 常用库函数使用
输出函数 2.格式输出函数 格式输出函数printf( )函数调用的一般格式为: printf(格式控制,输出表列) 该函数有两大类形参,“格式控制”和“输出表列”。“格式控制”
是一个字符串,由普通字符、以“%”开头的格式控制字符构成;“
数据的变量的内存地址列表。得到变量地址需要使用取地址运算符 “&”,该运算符是单目运算符,运算对象一般来讲是变量,其作用是
得到参与“&”运算的运算对象的地址,如“&a”则得到变量a的地址
。 “格式控制”中的格式控制字符控制的是“地址表列”中值的输入格 式,格式控制字符按照左对应关系控制地址表列中的变量。
头文件中声明了库函数的原型。
Page 4
3.2 常用库函数使用
输出函数 在C语言函数库中的标准输出函数是以标准的输出设备为输出对象的 ,主要有字符输出函数和格式输出函数。 1.字符输出函数 字符输出函数putchar( )函数调用的一般格式为:putchar(实参)
调用putchar( )函数的实参是一个char型数据,也可以是一个int型数
Page 10
3.2 常用库函数使用
输入函数 2.格式输入函数
表3-3 格式字符 %d 整型 scanf( )函数常用的格式字符 说 明
以十进制形式输入int或unsigned int数据
%o
%x
以八进制形式输入int或unsigned int数据的机器码
以十六进制形式输入int或unsigned int数据的机器 码 以小数形式或以指数形式输入float数据(二者无 区别) 输入单个字符 输入字符串
输出表列”是需要输出的数据项的列表,数据项之间用逗号隔开,“ 输出表列”中数据项可以是常量、变量、表达式或者函数调用等。“
格式控制”中的格式控制字符控制的是“输出表列”中的数据项的输
出格式,格式控制字符按照左对应关系控制数据项的输出。
Page 6
3.2 常用库函数使用
输出函数 2.格式输出函数
成的表列,是传递给函数的参数,“参数表列”中的参数必须和函数
原型中声明的参数的个数和类型保持一致。函数调用后加“;”就构成 了函数调用语句。
Page 3
3.2 常用库函数使用
库函数的使用 库函数是存放在函数库中的函数,调用函数时必须告诉编译系统该库 函数属于哪一个函数库,以便编译系统能检查函数调用是否合法,并 有效地执行该库函数,这一过程称为函数的声明。 标准库函数的声明形式为:#include <头文件>
读取的字符。一般情况下应将该函数的调用参与表达式构成语句。
Page 9
3.2 常用库函数使用
输入函数 2.格式输入函数 格式输入函数scanf( )函数调用的一般格式为: scanf(格式控制,地址表列) scanf( )函数也有两大类形参“格式控制”和“地址表列”。“格式
控制”同样由格式控制字符和普通字符组成。“地址表列”是需输入
表3-1 printf( )函数中常用格式字符说明
具体说明 %d %u 整型 %o %x,%X 实型 %f %e 以十进制有符号形式输出int或unsigned int型整数 以十进制无符号形式输出int或unsigned int型整数 以八进制形式输出int或unsigned int型整数的机器码
实型 字符型 字符串
%f,%e %c %s
Page 11
3.2 常用库函数使用
输入函数 2.格式输入函数
表3-4 格式修饰符 m * 输入数据的域宽控制 跳过(用*修饰的格式字符对应读入的数据不需变量接收 ) scanf( )函数常用的格式修饰符 说 明
Page 8
.n
l
h
3.2 常用库函数使用
输入函数 在C函数库中的标准输入函数是以标准的输入设备为输入对象的,主 要有字符输入函数和格式输入函数 。 1.字符输入函数 字符输入函数getchar( )调用的一般格式:getchar( )
函数的功能是从标准输入设备读取一个字符,该函数调用时会带回所
第三章 顺序程序结构设计
3.1 C语句概述
语句描述了一种行为,是向计算机发出的执行某一操作的动作。 语句是用来控制计算机执行具体操作的一种控制行为,是没有值的。 C语句种类繁多,灵活易用,初学者应掌握每种语句的语法规则,合 理使用语句描述算法中的操作。 C语言的语句可以分为以下几类:表达式语句 ;流程控制语句 ;空
语句 ;复合语句 ;函数调用语句
Page 2
3.2 常用库函数使用
库函数的使用 使用标准库函数,必须首先了解函数原型,函数的原型说明了函数的 名称、参数的个数及类型、函数的返回值等信息,在了解了函数的原 型以后,就可以在程序中需要使用函数的地方调用该函数了。函数调 用就是使程序的执行流程跳转到该函数,执行该函数的相关代码,从 而实现该函数的功能。 函数调用的一般形式为:函数名(参数表列) 用“函数名”标识调用的是哪一个函数。“参数表列”是确定的值构
说 明
控制输出数据的对齐方式为左对齐(默认时输出数据为右对齐) 指定的空位填充0(默认为空格) 修饰o,x,以八进制或十六进制数输出时,输出前导符0或0x m为一个大于0的整型常量,控制输出数据所占的列宽,当m大于实际数 据宽度时,在数据的左侧补空格,当m小于或等于实际数据宽度时按数 据的实际宽度输出 修饰e,f,g,输出浮点数时,.n控制小数输出的位数 修饰s,输出字符串时,输出左起前n个字符 修饰d,o,x,u,指定输出的数据为long int或unsigned long int型数据 修饰e,f,g,指定输出数据为double型数据 修饰d,o,x,u,指定输出的数据为short int或unsigned short int型数据