内容正文:
第三章 程序设计的三大结构
--顺序结构
1
C语言
知识树
My First Template
CONTENTS
目录
01
02
数据的格式化输入输出
C语言中的语句
03
字符数据的输入输出
04
输入中的缓存残余问题
C语言中的语句
C语言程序设计
4
C语言
C语言中的语句
My First Template
语言的
基本构成
字
词
句子
标点
…
C语言的
基本构成
变量
常量
运算符
表达式
语句
…
C语言
C程序的执行部分是由语句组成的;
程序的功能也是由执行语句实现的。
语句
C语言中的语句
C语言中的语句
C语言中语句的标志是分号“;”
每个语句都以分号“;”结束
一个语句可以写在一行内,也可以占多行
一行可以写一个语句,也可以写多个语句。
My First Template
C语言
C语言中的语句
C语言中的语句
1、空语句。只有分号“;”或“{ }”组成的语句称为空语句。空语句是什么也不执行的语句。
例如:
while(getchar()!='
') ;
或者while(getchar()!='
') { }
说 明:语句的功能是从键盘输入字符,如不是回车则重新输入。这里的循环体为空语句,也就是什么也不做。一般推荐使用第二种方式表达空语句,这样直观、一目了然。
My First Template
C语句
空语句
表达式语句
函数调用语句
控制语句
复合语句
C语言
C语言中的语句
C语言中的语句
2、表达式语句。由表达式加上分号“;”组成。表达式语句包括:算术表达式语句、逻辑表达式语句、关系表达式语句、赋值表达式语句等。
其一般形式为:表达式;
说 明:执行表达式语句就是计算表达式的值。
例如:
x=y+z; 赋值表达式语句;
y+z; 算术表达式语句,但计算结果不能保留,无实际意义;
My First Template
C语句
空语句
表达式语句
函数调用语句
控制语句
复合语句
C语言
C语言中的语句
C语言中的语句
3、函数调用语句。由函数名加上一对小括号“( )”。括号中跟上实际参数,再加上分号“;”组成。
其一般形式为: 函数名(实际参数表);
说 明:执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句,求取函数值。
例如:printf("我是一个好人
");
说 明:调用格式化输出函数,输出字符串。
My First Template
C语句
空语句
表达式语句
函数调用语句
控制语句
复合语句
C语言
C语言中的语句
C语言中的语句
4、控制语句。用于控制程序的流程。
可分成以下三类:
条件判断语句:if语句、switch语句;
循环执行语句:do while、while、for语句;
转向语句:break、continue、return语句。
My First Template
C语句
空语句
表达式语句
函数调用语句
控制语句
复合语句
C语言
C语言中的语句
C语言中的语句
5、复合语句。也称为语句块,把多个语句用“{}”括起来组成的一个语句称复合语句。
例如:
{
int x,y,z;
x=y+z;
printf(“%d
”,x) ;
}
说 明:复合语句结尾的“}”外不能加分号。
My First Template
C语句
空语句
表达式语句
函数调用语句
控制语句
复合语句
C语言
C语言中的语句
#include<stdio.h>
float area(float r);
int main(){
float r,s;
r = 18.5 /2;
if(r > 0)
{
s = area(r);
printf("s=%f",s);
}
else
{
printf("s=%f",s);
}
}
float area(float r){
const float PI = 3.14159;
float s;
s = r * r * PI;
return s;
}
预处理指令
函数声明语句
变量声明语句
表达式语句
复合语句
复合语句
常变量声明语句
变量声明语句
表达式语句
流程控制语句
控制语句
函数
定义
函数
定义
My First Template
数据的格式化输入输出
C语言程序设计
13
C语言
C语言程序设计—数据的格式化输入输出
程序:为了使用计算机解决某些问题而编写的一系列有序指令的集合。
解决问题
计算机中的程序
My First Template
C语言
C语言程序设计—数据的格式化输入输出
什么是计算机?
计算机:为能够接受外界的信息,经过大脑处理后,产生有用的信息的软硬件的结合
My First Template
C语言
框架结构
{
第一步:接收外界信息
第二步:加工处理
第三步:产生输出信息
}
程序
C语言程序设计—数据的格式化输入输出
计算机的功能
My First Template
计算机
接收外界信息
加工
处理
产生输出信息
C语言
本次任务
C语言程序设计 数据的格式化输入输出
求圆的周长和面积
My First Template
CONTENTS
内容
01
02
相关知识
03
任务实现与总结
任务分析
C语言
r
周长c=2 π r
面积s= π r2
C=2 π r
r 需要从外界接收
π=3.1415926
(常量)
常数
任务分析
数据的格式化输入输出—任务分析
c=2 π r
s= π r2
My First Template
C语言
标准输入输出函数
printf(“格式控制” ,输出表列);
scanf(“格式控制” ,地址表列);
输入/输出函数 (scanf/printf) 用于接受和显示数据或信息
输出缓冲区
输入缓冲区
数据的格式化输入输出—相关知识
My First Template
C语言
标准输出函数printf()
功能:
printf函数可以将任意类型的多个数据
输出到标准输出设备上(一般为显示器)。
使用形式:
printf(格式控制,输出表列);
普通字符
格式说明
转义字符
格式控制
由双引号括起
来的字符串
由“%”和格式字符组成,
它的作用是将输出的数
据按照指定的格式输出。
需要原样输
出的字符。
用于控制输出。
(1)格式控制
数据的格式化输入输出—相关知识
My First Template
C语言
标准输出函数printf()
功能:printf函数可以将任意类型的多个数据输出到标准输出设备上(一般为显示器)。
使用形式: printf(格式控制,输出表列);
(1)格式控制-字符
格式字符(常用) 含 义
d 十进制形式输出带符号整数
o 八进制形式输出无符号整数)
x 十六进制形式输出无符号整数
c 输出一个字符
s 输出一个字符串
格式字符 含 义
f 小数形式输出单、双精度实数
e 指数形式输出单、双精度实数
l 用于长整型,可加在格式符d,o,x,u之前
m(整数) 数据最小宽度
n(整数) 对实数,表示输出n位小数;对字符串,表示截取的字符个数
- 输出的数字或字符在域内向左靠
数据的格式化输入输出—相关知识
My First Template
C语言
标准输出函数printf()
功能:
printf函数可以将任意类型的多个
数据输出到标准输出设备上(一般
为显示器)。
使用形式:
printf(格式控制,输出表列);
(2)输出表列
是需要输出的一些数据,可以是表达式或变量名。
例:int a = 123;
printf ("a=%d
", a);
有多个输出数据时则:
-- 输出表列中各输出间用逗号分隔
--格式说明与输出数据的个数相同且一一对应
如:int i = -5;
float j = 98;
printf ("i = %d, j = %-10.2f \ n", i, j );
输出为:i = -5, j =98.00
数据的格式化输入输出—相关知识
My First Template
C语言
printf()例子
int visitor_count = 150;
printf (" %d" , visitor_count);
输出结果:150
int salary = 5500;
printf (" %10d" , salary);
输出结果: 5500
输出结果的左边显示了 6 个空格
float circumference = 78.53;
printf (" %f" , circumference);
输出结果:78.530000
默认情况下精确到六位小数
double level = 168.2251074;
printf ("%7.2f" , level);
输出结果: 168.23
7表示所有的数字和小数点所占的位数。不够7位右对齐;2代表小数点后多少位
数据的格式化输入输出—相关知识
My First Template
C语言
标准输入函数scanf()
功能:scanf函数可以从标准输入设备输入任意类型的多个数据(一般为键盘)。
注意:输入数据时不能规定精度
使用形式: scanf(“格式控制” ,地址表列);
使用注意事项:
(1)输入时不能规定精度,如
scanf(“%6.1f”,&a); 是不合法的。
(2)格式控制之后是地址表列而不是变量表列
scanf(“%d,%d”,&a,&b);是正确的,
scanf(“%d,%d,%d”,a,b);是错误的。
数据的格式化输入输出—相关知识
My First Template
C语言
任务实现
#include "stdio.h"
void main()
{
//信息采集
float r,c,s; //定义三个变量分别存储半径、周长、面积
printf("请输入半径的长度
"); //提示信息
scanf("%f",&r); //输入半径 给半径r赋值
//程序逻辑
c=2*3.1415;
s=3.1415*r*r;
//信息输出
printf("圆的周长是%f
面积是%f
",c,s);
}
内存
请输入半径的长度: 3
圆的周长是6.28
面积是28.27
r
c
s
3
6.28
28.27
数据的格式化输入输出—任务实现
My First Template
C语言
小组
求长方形的周长、面积
写任务
实现计算圆柱体的表面积、体积
读任务
个人
布置任务
数据的格式化输入输出—布置任务
My First Template
总结
1. 提出任务(周长、面积)
2. 任务分析(需要输入输出)
3. 相关知识(输入输出规则)
4. 任务实现
$$