第3章 的设计顺序结构程序
第3章顺序和选择结构程序设计

3.3 C语句
1.表达式语句
任何一个表达式加上一个分号就可以组成一条
语句。
例如: 表达式 a=b+c*(d+3) a+b+c i++
表达式语句 a=b+c*(d+3); a+b+c; i++;
函数调用也是表达式,在其后加一个分 号,就变成了函数调用语句。
eg:printf函数调用语句和scanf函数调 用语句
-1.0 (x<0) y= 0 (x=0) 1.0 (x>0)
运行结果: -88 y=-1.000000
3.4.4
if语句的嵌套
条件语句的嵌套就是在if语句中包含另一 个if语句。 从语法上讲,if语句中所包含的语句是一 个语句或一个复合语句,这个语句当然也 可以是另一个if语句,即内嵌if语句。
3.1 程序设计概述
程序设计的最终目的是能在计算机上计算出正确的 结果来。 1969年,Dijkstra首先提出了结构程序设计的概念, 强调从程序的结构和风格上来研究和设计程序。 首先应从全局上把握系统所具备的功能是什么,并 将系统划分成几个相对独立的子系统,而每个子系 统只涉及局部的环境和条件。 然后,进入第二步的实现阶段,即进行编码。在第 一阶段,只要知道“做什么”,而在实现阶段,才 考虑“如何做”。
用交换变量值的方法按顺序输出这两个数
交换变量值的思想: 不改变变量名,但变量值可改变的性质。 若a的值大于b的值,则a与b的值不交换;若a的值 小于b的值,则两者互相交换值。从而使得无论何 时,变量a的值始终大于变量b的值。最后,按先a 后b的顺序输出,即可实现按由大到小的顺序输出 的功能。 实现方法: 为了能够进行相互交换,必须引进一个临时变量 t。用以下三个赋值语句可实现交换。 t=a; a=b;b=t; /*t=a,a=b,b=t;*/
第3章顺序结构的程序设计

空类型(void)
常量:是指在程序运行过程中其值不能被改变 的量。如: 整型常量:12、-453、 02、0x12 实型常量: 3.14、0.007、6.34e+04 字符常量: ‘a’、‘!’ 、‘\n’、‘\101’ 字符串常量:“jkkj”、“5483fd”、“a”
优先级 1
运算符 [ ] () -> .
23
3.3 字符数据的输入和输出
【例】 输入一字符B,变量是整型。 #include "stdio.h" void main() { int i; i=getchar( ); putchar(i); } 注意:getchar( )函 运行输入: 数可以接收任意字符, B 包括空格、回车或Tab 运行结果: 键等特殊字符。 24 B
基本整型(int) 短整型(short int) 长整型(long int ) 字符型(char) 单精度浮点型(float) 浮点型 双精度浮点型(double) 数组类型([ ]) 结构体类型(struct) 共用体类型(union) 枚举类型(enum) 整型
基本类型
数 据 类 型
构造类型 指针类型(*)
结合规则 从左至右
2
3 4
! ~ ++ -- - * & sizeof (类型名)
* / % + -
从右至左
从左至右 从左至右
5
6 7 8 9 10 11 12
<< >>
< <= > >= = = != & ^ | && ||
从左至右
从左至右 从左至右 从左至右 从左至右 从左至右 从左至右 从左至右
第3章 顺序结构程序设计

第三章顺序结构程序设计一、输出函数printf的使用使用的格式:printf(“输出格式串”,表达式表); /*printf要小写*/重点掌握输出格式符① 格式符:%d 以普通整型输出(不可以写成%D)%md 以普通整型输出,数据占m位,右对齐%+md 以普通整型输出,数据占m位,右对齐(正数的前面有+号)%-md 以普通整型输出,数据占m位,左对齐%hd 以短整型输出%ld(或%Ld) 以长整型输出%u 以无符号整型输出%o 以八进制形势输出%x(或%X) 以十六进制形势输出%f 以单精度小数形势输出,点后6位小数%lf(或%Lf或%f) 以双精度小数形势输出,%±m.nf 以单精度小数形势输出,点后n位小数,且进行四舍五入%.nf 以单精度小数形势输出,点后n位小数,且进行四舍五入%c 以字符形式输出%s 以字符串形式输出说明:以上的常用格式符必须和后面的变量一一对应,并且后面的变量是什么类型前面就必须用相应的格式符例:int a=-2;unsigned int b=30;float c=3.1456;printf(“%d%u%5.2f”,a,b,c); 问:输出结果是什么?(-230 3.15)②普通字符普通字符原样输出,它不控制变量的输出。
printf(“a=%d,b=%u,c=%5.2f”,a,b,c); 问:输出结果是什么?③转义字符\n 回车且换行\r 回车但不换行\b 退一个字符\t 走一个制表位(8个字符)\\ 转译成\\’转译成’\”转译成”%% 转译成%\ddd 转译成1~3位八进制所对应的ascii码值所代表的字符\xdd 转译成1~2位十六进制所对应的ascii码值所代表的字符二、输入函数scanf的使用格式:scanf(“格式串”,变量地址列表);重点掌握输入格式(有格式符和普通字符,没有转义字符)① 格式符:%d 以普通整型输入%ld(%Ld) 以长整型输入%hd 以短整形输入%md 取整型的m位%u 以无符号型输入%o 以八进制输入%x(%X) 以十六进制输入%f 以单精度小数输入%lf(%Lf) 以双精度小数输入%mf 以单精度小数输入(但是不能规定它的精度。
第3章 顺序结构程序设计PPT课件

4.标识符
标识符是一个数据对象的名字 变量名、符号常量名是标识符 标识符命名规则
字母或下划线开始,后跟字符、数字或下划线 以下为合法的标识符
x1, sum, _average, day, month, lotus_1_2_3 以下为不合法的标识符
$456, #abc, 1fs, 2nd, M.D.Jhon 变量名不能是关键字(即保留字P378)
-10的原码 取反 再加1
int i=10 0 0 0 00 0 0 0 0 00 0 1 0 1 0
int j= -10 1000000000001010
1 1 11 1 1 11 1 1 1 1 0 10 1
得-10的补码 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 符号位
4.常见整型数据的存储空间和值的范围
#include <stdio.h> main( ) {
int a, b, c, d; unsigned u; a=12; b=-24; u=10; c=a+u; d=b+u; printf("a+u=%d, b+u=%d\n",c,d); }
6.整型数据的溢出
一个int 型变量的最大允许值为32767,如果再加1,其 结果不是32768,而是-32768,即"溢出"。
例 main() { int a, b; a=32767; b=a+1; printf("%d, %d\n",a,b); }
32767
0 1 11 1 1 11 1 1 1 1 1 11 1
-32768 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
第3章顺序和选择结构程序设计

同,输入数据表列是一个或多个用逗号分隔的变量的地址 或字符串的首地址。
变量的地址可以通过地址运算符“&”得到。r的地址就是 &r。
2008-9-26
程序设计基础(C语言)wh
9
eg编写求圆面积的通用程序。
int x;
scanf(“%d”,&x);
printf(“|%d|=”,x);
if (x<0)
x=-x;
printf(“%d\n”,x);
输出x的值 结束
}
-12 |-12|=12
2008-9-26
程序设计基础(C语言)wh
32
eg 从键盘输入圆的半径,若半径小于等于0, 则不进行计算;否则,计算圆面积。
行两条或多条路径中的一条。 ➢ 循环结构是在给定条件成立的情况下反复执行某个程序段,
该程序段称为”循环体”。 实现上述各种程序流程的语句称为流程控制语句.
2008-9-26
程序设计基础(C语言)wh
19
①if()~else~ ②for()~ ③while()~ ④do~while() ⑤continue ⑥break ⑦switch ⑧goto ⑨return
printf(”hello!”); scanf(”%d”,&x); v = volume(3, 4, 5);
2008-9-26
程序设计基础(C语言)wh
17
2.复合语句
将多个相关联的简单语句用一对大括号括
起来就构成了复合语句,在程序中当作一个语 句看待。其一般格式为:
{ a=1.0; b=2.0; i++;
第3章顺序结构程序设计

一、C的数据类型
2、 变量 • 变量代表内存中具有特定属性的一个存储单元,它
用来存放数据,这就是变量的值,在程序运行期间, 这些值是可以改变的。
int a=25;
2001H
25
2002H
2003H
Advanced Programming
一、C的数据类型
2、 变量
Advanced Programming
二、常量与变量
1、 常量和符号常量
(1)整型常量
• 在一个整常量后面加一个字母u或U,认为是unsigned int 型。
• 在一个整常量后面加一个字母l或L,则认为是long int型常 量。 如123l.432L.0L等。
Advanced Programming
❖每个二进位的值是0或1
54
01
0 1 2 3 4 5 6 7 8 9 10
32
10
10
01
……...
Advanced Programming
一、C的数据类型
1、整型数据
常见的整型类型:
类型
类型说明符 长度 数的范围
基本整型 int
2字节 -32768~32767
短整型
short
2字节 -215~215-1
一、C的数据类型
1、 常量和符号常量 (4)字符串常量
• C规定:在每一个字符串常量的结尾加一个 “字符串结束标志”,以便系统据 此判断字符串是否结束。
C规定以字符’\0’作为字符串结束标志。
如:如果有一个字符串常量”CHINA” ,实际上在内存中是:
C H I N A \0
它占内存单元不是5个字符,而是6个字符,最后一个字符为’ \0’。 但在输出时不输出‘\0’。
第三章 顺序结构程序设计.
第三章 顺序结构程序设计
3.2 C语句
所谓语句就是用来对数据进行加工(完成操作任 务),是构成程序的基本单位。通常一个C程序由若干 个函数(系统,用户)组成。 每一个函数由若干条语句组成.每条语句总是以 “;”结束。
3.2 C语句
表达式语句: 表达式; 功能:表达失求值. 如:
getchar scanf puts
putchar
int putchar ( int c );
//应包含的.h文件为stdio.h
• 功能:在显示器上输出字符c。 • 返值:正常,返回字符的代码值;出错,返回 EOF(-1)。 • 说明:该函数带有一个参数c,它为要显示字符的 ASCII码值,有一个int型返回值 。
char ch = 'A'; printf ("ch = %c", ch);
printf ("ch = %d", ch);
输出随机
//输出结果:ch = A
(以字符形式输出)
//输出结果:ch = 65 (以'A'字符的ASCII码形式输出)
printf函数中的格式转换字符及其含义
格式转 换符 %d 或 %i %x, %X 含 义 对应的表达 式数据类型 有符号整型
例
#include <stdio.h> main() { char c1,c2,c3; c1=‘y’;c2=‘o’;c3=‘u’; putchar(c1); putchar(c2);putchar(c3); }
结果:you
一般格式
printf
printf ("格式控制字符串",表达式1,表达式2,…,表达式n);
第03章 顺序结构程序设计
例:printf(”%f%%“,1.0/3);
输出0.333333%
1.234560e+002 _ _1.234560e+002 _ _ _1.23e+002 _ _1.23e+002 _ _1.23e+002 _
g格式符,用来输出实数,它根据数值的大 小,自动选f格式或e格式(选择输出时占宽 度较小的一种),且不输出无意义的零。
例如:若f=123.468,
printf(%f _ _%e _ _%g”,f,f,f); 输出结果:
(1)%f,不指定字段宽度,由系统自动指定,使整数部分 全部如数输出,并输出6位小数。 注意:并非全部数字都是有效数字。单精度实数的有效位 数一般为7位。 例:main()
{float x,y;
x=111111.111;y=222222.222;
printf(“%f”,x+y)
} 运行结果为:333333.328125 只有前7位数字是有效数字。 双精度也可以用%f格式输出,它的有效位数一般为16位, 给出小数6位。
U格式符,用来输出unsigned型数据,即无符号数, 以十进制形式输出。
注意:一个有符号整数(int型)也可以用%u格式 输出;一个unsigned型数据也可以用%d,%o, %x格式输出。
例:main()
{unsigned int a=65535;
int b=-2;
printf(“a=%d,%o,%x,%u\n”,a,a,a,a);
g e和f中较短一a=种3, b=4 fplorait an=t5f6(7“.78a9=;p%ridntf,(“%bg=”%,ad)\; n”,a,5b6)7;.789
《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)之意。其功能是按用户 指定的格式,把指定的数据输出到 显示器屏幕上。
第3章-用顺序结构设计程序解决简单实际问题
说明
对于整型:指long型,如%ld等; 对于实型:指double型,如%lf。
指域宽,即输出数据所输出的
m
最小宽度m;,n且的在格域式内向右对齐。
为%m.nf
指精度,对于实数,表示输出n位小数
n 对于字符串,表示截取的字符个数。
-
字符
l
说明
p对ri于nt整f(型“%:10指.2lfon\gn型”,,12如3.%4l6d2等);; p对ri于nt实f(型“%:7.指2sdo\unb”l,e“型CH,IN如A”%)lf;。
练习:对于f格式例题
main( ) { float a=1.2345; printf(“%f %10f\n”,a,a); printf(“%8.2f %.2f\n”,a,a); printf(“%-8.2f\n”,a); }
储备知识:
标准函数:指可以在各种计算机系统中都能使 用的函数。
标准输入六种标准输入输出函数: printf() 、scanf()、putchar() getchar()、puts() 、gets()
3.2 数据的输入与输出 预处理命令
用双引号括起来并以字符串的形式描述 包括:格式说明和普通字符。
由“%”和格式字符组成。 指需要原样输出 作用:将输出的数据转换 的字符,如逗号、
为指定的格式输出 空格等。
格式字符 输注出意形:式 举 例
输出结果
d或i
1、除了e、g格in式t 可a=以65;用大写,其它
格式十说进明制的整格数式字p符rin应tf用("小%d"写,a;);
以下问题如何处理:
域宽小于实际宽度时如何处理? 缺省的域宽与精度各是多少? 精度说明大于、小于实际精度时, 如何处理? float与double的最大精度是多少? 多余的小数是被截断?还是舍入?