谭浩强版C++程序设计第3章程序设计初步ppt课件.ppt
《谭浩强版C++程序设计第3章程序设计初步ppt课件.ppt》由会员分享,可在线阅读,更多相关《谭浩强版C++程序设计第3章程序设计初步ppt课件.ppt(75页珍藏版)》请在三一办公上搜索。
1、第3章 程序设计初步,本章要点基本概念赋值语句C+输入与输出关系运算和逻辑运算选择结构循环结构,3.1 面向过程的程序设计和算法,在面向过程的程序设计中,设计者必须制定计算机执行的具体步骤。处理问题的一系列步骤即算法。计算机算法分为:数值算法和非数值算法。算法的表示方法有:自然语言 用人们使用的语言描述算法流程图 用一些图框、线条以及文字说明来形象 地、直观地描述算法。伪代码 计算机语言(程序),流程图示例,开始,结束,3.2 C+程序和语句,1.C+程序结构,程序包括:数据描述(声明语句)数据操作(执行语句),2. C+语句概述,(1)声明语句 变量说明,如 inta;(2)执行语句 控制语
2、句主要完成分支结构程序和循环结构程序的控制。 C+主要包括以下9个控制语句: ifelse语句 分支语句 switch语句 多分支语句 for语句 循环语句 while语句 循环语句 dowhile语句 循环语句 continue语句 结束本次循环语句 break语句 结束循环或结束switch语句 goto语句 转向语句 return语句 从函数返回语句,2. C+语句概述,函数调用语句 C+有大量的系统函数,程序员也可以自己定义函数,对这些函数的调用可以作为一条语句。表达式语句 由一个表达式构成一个语句,即在表达式后添加一个分号,如赋值表达式语句等。(3)空语句 空语句只有一个分号。即:
3、; 因此空语句什么也不做。(4)复合语句 除了上面的简单语句外,可以将一组简单语句用大括号 括起来,称之为复合语句。,3.3 赋值语句,赋值语句由赋值表达式加上一个分号构成。 a=b+25; c=(29.5*d)/(a+b);赋值运算符具有“右结合性”,如: a=2;x=b;与 2=a; b=x;C+程序中可以出现连续赋值的情况。 a=b=c=d;,3.4 C+的输入与输出,C+通过调用输入输出流库的流对象cin和cout 实现输入、输出功能。1. 输入输出流的基本操作cin语句的一般格式: cin变量1变量2变量n;cout语句的一般格式: cout。,流提取运算符,流插入运算符,说明,一个
4、cin、cout语句可以分写成若干行。如:cinab; 可以写成: cout“this is a C+ program”endl;可写成: 不能用一个插入运算符插入多个输出项。 如:couta,b,c ;coutabc;输入多个数据时用空格分开。cin不能输入空格。,cina b;,cout“this is” “a C+program” endl;,2.在输入输出流中使用控制符-格式控制,说明,使用控制字符时,头文件应包含#includ 和 #include 一个cout语句中可以用多个控制符,但每个流插入运算符“后只能跟一个控制符,多个控制符需要用多个流插入运算符“。如:double a=1
5、23.456789012345; couta; 输出123.456(默认精度6) coutsetprecision(9)a; 输出123.456789 coutsetioflags(ios:fixed) setprecision(4)a输出123.4567(小数点后精度4),例3.1:输出使各行小数点对齐,#include #include using namespace std;int main( ) double a=123.456,b=3.14159,c=-3214.67; coutsetiosflags(iosfixed)setiosflags(iosright) setprecisi
6、on(2); coutsetw(10)aendl; coutsetw(10)bendl; coutsetw(10)cendl; return 0;,输出: 123.46 3.14 -3214.67,2.putchar和 getchar函数,utchar函数(字符输出函数) 其作用是向终端输出一个字符,格式: putchar(c);输出字符变量c的值 其中:c 可以是字符型变量或整型变量也可以输出转义字符 putchar(101) 等效 putchar(A),和putchar(65); putchar() 输出单引号,例3.2:输出单个字符,#include using namespace st
7、d;int main( )char a,b,c; a=B;b=O;c=Y; putchar(a);putchar(b);putchar(c);putchar(n); putchar(66);putchar(79);putchar(89);putchar(10); return 0;运行结果:BOY BOY,getchar()函数(字符输入函数),getchar() 函数的返回值为字符的值。例 3.3 输入单个字符#include using namespace std;int main() char c; c=getchar(); putchar(c+32); return 0; getcha
8、r函数得到的字符可以赋给一个字符或整型变量,也可以不赋给任何变量。在调试程序时,可以用getchar() 暂停程序执行;,rintf的作用是向终端输出若干个任意类型的数据。一般格式:printf(格式控制,输出列表)例如: printf(“%d%d”,a,b); 格式控制 输出列表printf(“a=%d b=%d”,a,b) 格式说明 普通字符 输出列表 结果 a=3 b=4,3. scanf 和printf函数,d 格式符,d格式符。用来输出十进制整数。%d printf(“%d,%d”,a,b);%md printf(“%4d,%4d”,a,b) a=123; b=12345; prin
9、tf(“%4d,%4d”,a,b); 123,12345%ld 输出长整型数 printf(“%ld,%ld”,a,b); 如:a=1234; printf (“%10ld”),a) ; 则: 1234,C 格式符,c格式符。用来输出一个字符。例:main ( ) char a =a;int b = 97; print(“%c,%dn”,a,a); print(“%c,%d”,b,b);结果:a,97 a,97整数的范围在0255之间,可以用字符形式输出;一个字符数据可以用整数形式输出。也可指定字符宽度。如: printf(“%3d”,c);,S 格式符,s格式符。用来输出一个字符串。% s
10、原长输出% ms 字符串占m列,小于m左补空格% -ms 大于m原样输出,小于m右补空格% m.ns 输出占m列,只取字符串左端n个字符% -m.ns n个字符输出在m列的左侧,右补空格例:main ( )printf(“%3S,%7.2s,% 5.4s,% -5.3n”,“CHINA”,“CHINA”,“CHINA”,“CHINA”);结果:CHINA,CH,CHIN,CHI,f 格式符,f格式符。用来输出实数,以小数形式输出。 %f,不指定字段宽度,由系统自动指定。整数部分如数输出,并输出6位小数。单精度实数有效位数为7位;双精度实数有效位数为16位,小数6位。如:main ( )floa
11、t x,y;x=111111.111;y=222222.222;printf(“%f”,x+y);结果:333333.326125 % m.nf 指定输出的数据占m列,其中n位小数;右对齐。 % -m.nf 同上,左对齐。,e 格式符,e格式符。以指数形式输出实数。 % e 整数一位,小数6位,指数5位包括e和符号位.例: printf(“%e,%e”,123.456,0.006543); 输出:1.234560e+002,6.543000e-003 % m.ne和% -m.ne 其中m为输出宽度,- 为左齐, n为尾数的小数位数.,说明,格式字符一般用小写格式控制字符串中可以包括转义字符d、
12、c、s、f、e、等字符,紧接在“%”后面即为格式字符,在其它位置则为普通字符 printf(“c=%cf=%fs=%s”,c,f,s):若想输出“%”,则用连续两个“%”表示 如:printf(“%f % %”,1.0/3); 输出:0.333333%不同系统的格式输出,可能会有些小差别,scanf 格式输入函数,用来输入任何类型的多个数据一般格式: scanf (格式控制,地址列表)例: main ( ) int a,b,c; scanf(“%d%d%d”,运行时的合法输入可以是:345 3453 3(按Tab键)4 45 5非法输入为:3 , 4 , 5,scanf 函数,说明,1 .格式
13、控制后面是变量地址,而不是变量名如:scanf(“%d,%d”,a,b); 是不对的2.格式控制字符串中除了格式说明符以外的其它字符,在输入时要原样输入,如:scanf(“%d : %d : %d”, 输入:a b c,3.5 编写顺序结构的程序,例3.5 求一元二次方程式ax2+bx+c=0的根。 a,b,c的值在运行时由键盘输入,它们的值满足b2-4ac0。,源程序,#include #include /由于程序要用到数学函数 sqrt,故应包含头文件cmathusing namespace std;int main( )float a,b,c,x1,x2; cinabc; x1=(-b+
14、sqrt(b*b-4*a*c)/(2*a); x2=(-b-sqrt(b*b-4*a*c)/(2*a); coutx1=x1endl; coutx2=x2endl; return 0;,#,3.6 关系运算与逻辑运算,关系运算符与关系表达式 6个关系运算符:、=、 =、!= 优先级高 优先级低 关系运算符优先级低于算术运算符、高于赋值运算符 注意区分“等于”运算符 “=” 与“赋值”运算符 “=” 关系表达式的结果类型为bool,值只能为 true 或 false 如: int a = 4, b = 10; a b, a=b, a=b, a!=b的结果分别为:true, true, false
15、, false, false, true在C/C+中用数值1代表true,用0代表false。,例:布尔量值的表示,#includeusing namespace std;int main()int a,b;bool c;a=2;b=5;c=ab;coutbendl;return 0;,C+ 提供3个逻辑运算符: |(或) 、&(与)、!(非) 优先级:低 高 逻辑表达式:用逻辑运算符连接进行逻辑运算的式子。逻辑表达式的结果类型为bool,值只能为 true 或 false。判断一个逻辑量是否为true的标准是:如果其值为0认为是false,如果其值为非0就认为是true。,逻辑运算符与逻辑表
16、达式,例如:,(a=60) & (a90) | (b85) / a大于90,或者b大于85,结果为true,条件成立 ! (a= =100) / a不等于100时,条件成立 若a=4 则 !a 为false,逻辑与&:当且仅当两个运算量的值都为“真”时,运算结果为“真”,否则为“假”。逻辑或 | :当且仅当两个运算量的值都为“假”时,运算结果为“假”,否则为“真”。 逻辑非! :当运算量的值为“真”时,运算结果为“假”;当运算量的值为“假”时,运算结果为“真”。,逻辑运算符的运算规则,判断某一年是否为闰年的逻辑表达式,分析:闰年是符合下列条件之一的年份:(1)能被4整除,但不能被100整除;(
17、2)能被100整除,又能被400整除。用逻辑表达式表示:(year % 4=0 & year % 100!=0) | year % 400=0,3.7 选择结构和if语句,选择结构也称分支结构,就是在程序运行过程中,根据具体条件执行不同的程序段。C+选择结构可以由if语句或switch语句实现。C+提供了3种形式的if语句。,1. if语句形式一,一般形式: if(表达式) 语句组; ,注意:表达式必须用“( )”括起来 若语句组中只有一条简单的语句,则大括号“”可以省略。,表达式,语句,假(0),真(非0),表达式,语句,假(0),真(非0),例 输入一个成绩,判断是否需要补考,如果需要打印
18、出来,#include int main()int score;cout score;if(score 60)cout 不及格,需要补考! endl;,程序运行时,若输入的成绩大于或等于60,则没有任何输出。,2. if语句形式二,一般形式: if(表达式) 语句组1; else 语句组2; ,注意:表达式必须用“( )”括起来 若语句组中只有一条简单的语句, 则大括号“”可以省略。 外不用加分号。,例:求两个数中较大的值和较小的值,#include using namespace std;int main()int a,b,max,min;a=10;b=20;if(ab)max = a;mi
19、n = b;elsemax = b;min = a;cout max = max endl;cout min = min endl; return 0;,程序运行结果为:max = 20min = 10,3. if语句形式三,一般形式: if(表达式1) 语句组1;else if(表达式2) 语句组2; else if(表达式m) 语句组m; else 语句组n;,举例:,从键盘上输入一个成绩,如果大于等于90,输出“优”,如果大于等于80,小于90,输出“良”,如果大于等于70,小于80,输出“中”,如果大于等于60,小于70,输出“及格”,如果小于60,输出“不及格”。,#include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 谭浩强版 C+ 程序设计 章程 设计 初步 ppt 课件

链接地址:https://www.31ppt.com/p-1374990.html