C语言ppt课件上半部分复习题.ppt
《C语言ppt课件上半部分复习题.ppt》由会员分享,可在线阅读,更多相关《C语言ppt课件上半部分复习题.ppt(72页珍藏版)》请在三一办公上搜索。
1、“编程能力”不是听会的、也不是看会的、而是动手动脑练会的!,高级语言程序设计上半部分复习课,主讲教师:丁丁计算机与信息技术学院,课程内容,第一章 程序设计和C语言第二章 数据对象与计算第三章 变量、函数和控制结构第四章 基本程序设计技术第五章 C程序结构(函数)第六章 数组第七章 指针第八章 文件和输入输出第九章 结构和其它数据机制第十章 程序开发技术第十一章 标准库,2022/11/30,高级语言程序设计,3,主要内容:程序设计和C语言,1.1 程序和程序语言程序和程序语言算法及其描述工具1.2 程序设计方法1.3 问题与程序设计,2022/11/30,高级语言程序设计,4,2022/11/
2、30,高级语言程序设计,5,主要内容:数据对象与计算,2.1 程序的基本结构 2.2 基本概念2.3 数据与类型 2.4 基本类型与数据表示2.5 数据的输入与输出2.6 运算符、表达式与计算 2.7 数学函数库及其使用,2022/11/30,高级语言程序设计,6,主要内容:程序设计的基本知识,3.1 语句、复合语句 3.2 变量概念、定义和使用3.3 定义函数(初步,第五章深入) 3.4 关系表达式、逻辑表达式、条件表达式3.5 语句和控制结构3.6 常见结构和问题,2022/11/30,高级语言程序设计,7,主要内容:基本程序设计技术,4.1 循环程序设计 4.2 循环中的问题4.3 循环
3、与递归 4.4 基本输入输出4.5 程序设计实例4.6 程序测试和排错,重点,控制结构顺序、选择、循环结构函数定义、声明及调用从问题到程序的编程思想程序的函数分解模块化程序设计基本的程序调试技能静态调试、动态调试黑箱测试、白箱测试,2022/11/30,高级语言程序设计,8,难点,循环递归基本输入、输出语句,2022/11/30,高级语言程序设计,9,程序数据结构算法,程序程序规定了计算机执行的动作和动作的顺序。算法:解决问题的方法和步骤算法的几个特性有穷性确定性无二义可执行性有0个或多个输入有0个或多个输出,从问题到程序的程序设计思想也体现了算法的重要性,2022/11/30,高级语言程序设
4、计,10,要点1:运算符及表达式?,已经学习哪几种运算符及表达式?优先级关系?自增、自减运算符算术运算符关系运算符逻辑运算符条件运算符赋值运算符逗号运算符,2022/11/30,高级语言程序设计,11,2022/11/30,高级语言程序设计,12,要点2:C语言的基本数据类型,C语言的基本数据类型有哪些?什么是常量?如何定义?什么是变量?如何定义?变量的存贮类型有哪几种?auto, register, static, extern变量从作用域的角度分哪几种?全局变量、局部变量,2022/11/30,高级语言程序设计,13,2022/11/30,高级语言程序设计,14,整型,字符型,实型,有,无
5、,基本数据类型,32,64,说明:数据类型所占字节数编译器不同而不同,2022/11/30,高级语言程序设计,15,常用数据类型,要点3:条件if语句,条件if语句有几种形式?if语句if-else语句if-else if语句if else的配对原则是什么?If else和switch开关语句的差别?,2022/11/30,高级语言程序设计,16,要点4:循环语句,循环语句有几种形式?while语句do-while语句for语句循环结构的三要素是什么?如何从循环中跳出?,2022/11/30,高级语言程序设计,17,要点5:函数,如何定义函数?函数声明的意义及原则?如何调用函数?参数传递和函数
6、返回值过程中类型不匹配时的转换原则?如何理解值参数?,2022/11/30,高级语言程序设计,18,2022/11/30,高级语言程序设计,19,特点:“单向”传递,void swap(int a, int b) int temp; temp = a; a = b; b = temp;int main() int x,y; scanf(%d,%d, ,例 两数交换,5,9,5,5,9,COPY,难点:函数的参数传递方式之值传递,运行结果:5, 9,值传递,要点6:基本输入输出语句,getchar()putchar()scanf()printf()数的批量输入输出:基本输入输出循环结构,2022
7、/11/30,高级语言程序设计,20,第一章习题讲解,1.用N-S结构图描述从十个数中选择最大数的算法。,MAXai,2. 给出求从1-100之间能被6整除的所有整数的和的算法。,第二章习题讲解,1. (课后第1题)指出下面的哪些字符序列不是合法的标识符:,_abc x+- 3x1 Xf_1_4 Eoof_a$#24 x_x_2 bg-1_I am,2022/11/30,高级语言程序设计,25,2022/11/30,高级语言程序设计,26,标识符,程序中的名字(描述对象)称为标识符如变量名(s,a,b,c)、 函数名(add, main)等;,标识符分用户定义的标识符和系统预定义的标识符用户定
8、义的如s,a,b,c;系统定义的如标准函数名printf,用户不得使用;,标识符对字母大小写敏感:a和A是不同字母;ABC、Abc、AbC和abc是4个不同标识符,形式:字母或数字组成的连续序列,字母(下划线“_”看作字母)开头(即以字母开头,后跟字母或数字)。,标识符命名基本原则,2022/11/30,高级语言程序设计,27,1)标识符一般需要反映其用途,如:int sum;2)如果标识符名由多个单词构成,通常采用“大小写”混排的方式(Windows应用程序),每个单词的首字符可大写; 如: TotalFiles,AddChild。3)变量名通常使用“名词”或者“形容词名词” 函数名通常使用
9、“动词”或者“动词名词” 4)标识符的长度应当适当。ANSI C规定名字不准超过6个字符,C+/C不再有此限制,但不宜过长。 5)通常将以下划线开始的标识符保留给系统用, 用户不使用。6)Unix(Linux)应用程序的标识符通常采用“小写加下划线”的方式,如add_child。,2. (课后第2题)手工计算下列表达式的值。,1) 125 + 01252)0XAF 0XFA3)24 * 3 / 5 + 64)36 + -(5 23) / 45)35 * 012 + 27 / 4 / 7 * (12 - 4),210,-75,20,40,350,2022/11/30,高级语言程序设计,28,八进
10、制,十六进制,八进制,十六进制,3.(课后第3题)在下列表达式的计算过程中,在哪些地方将发生类型转换,各是从什么类型转换到什么类型,表达式计算的结果是什么?,1) 3 * (2L + 4.5f) 012 + 442) 3* (int)sqrt(34) sin(6) * 5 + 0 x2AF3) cos(2.5f + 4) 6 * 27L + 1526 2.4L,2022/11/30,高级语言程序设计,29,long to float,int to float,int to float,int to float,53.500000,703.397077,1362.576588,2022/11/3
11、0,高级语言程序设计,30,自动类型转换的原则,int char, short,高,低,long,unsigned,double float,转换由编译系统自动完成。转换按数据长度增加的方向进行,即按“向高看齐”的原则提升“较低”类型,以保证不降低精度。,把表示范围小的类型的值转换为表示范围大的类型的值,从低到高转,4. 输入并调试程序,观察运行结果.,#include int main() double f1=1.0e+10; double f2=3.14; printf(%f:%fn,f1); printf(%e:%en,f1); printf(%g:%gn,f1); printf(%f:
12、%fn,f2); printf(%e:%en,f2); printf(%g:%gn,f2); return 0;,%f:10000000000.000000%e:1.000000e+10%g:1e+10%f:3.140000%e:3.140000e+00%g:3.14,2022/11/30,高级语言程序设计,31,按带小数点形式转换输出,按科学表示形式转换输出,按带小数点形式或者科学表示形式转换输出,int a=567;printf ( “%d”,a);,int a=255;printf(“%x”,a);,int a=65;printf(“%o”,a);,int a=567;printf(“%
13、u”,a);,char a=65;printf(“%c”,a);,printf(“%s”,“ABC”);,float a=567.789;printf(“%e”,a);,float a=567.789;printf(“%f”,a);,float a=567.789;printf(“%g”,a);,printf(“%”);,567,ff,101,567,A,ABC,5.677890e+02,567.789000,567.789,%,说明:格式字符一般用小写格式字符与输出项个数应相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式输出,格式字符表格,.n,对实数,指定小数点
14、后位数(四舍五入),修饰符,功 能,m,输出数据域宽,长度m,左补空格;否则按实际输出,输出数据在域内左对齐(缺省右对齐),-,指定在有符号数的正数前显示正号(+),+,输出数值时指定左面不使用的空位置自动填0,0,在八进制和十六进制数前显示前导0,0 x,#,在d,o,x,u前,指定输出精度为long型在e,f,g前,指定输出精度为long double型,l,修饰符,对字符串,指定实际输出位数,5. (课后第7题)写程序计算 的两个根。,2022/11/30,高级语言程序设计,34,int main( ) double delta; printf(Equation:5x2+2x+6n);
15、delat=b*b-4*a*c; if (delta0)printf(“x1=%f,x2=%fn”,0.5*(sqrt(delta)-b)/a, 0.5*(-sqrt(delta)-b)/a); else if (delta=0)printf(“x1=x2=%fn”,-0.5*b/a); elseprintf(“x1=%f+%fi,x2=%f-%fin”,-0.5*b/a,0.5*sqrt(-delta)/a,-0.5*b/a,0.5*sqrt(-delta)/a); return 0;,6. 输入三角形的三边,用下述公式计算三角形的面积: ,其中 s=(a+b+c)/2,2022/11/30
16、,高级语言程序设计,35,#include #include int main( ) double a, b, c, s, area; printf(Please input a,b and c: n); scanf(%lf,%lf,%lf,选做题:计算银行存款的本息。输入存款金额money、存期year和年利率rate,根据公式计算存款到期时的本息合计sum(税前),输出时保留小数点后两位。,2022/11/30,高级语言程序设计,36,#include #include int main() int year; double money,rate,sum; printf(“please i
17、nput the money:n”); scanf(“%lf”,37,上机问题汇总,rintf(“%f”,1065/(24*13);C语言不做类型检查格式字符与输出项类型不一致,自动按指定格式输出第7题:计算5x2+2x+6的两个根。输出它的两个虚根注意C语言中确实会发生自动类型转换,但在写程序时,尽量使得一个表达式中的数据的类型保持一致。节省不必要的空间损失。防止不同类型转换时的信息丢失。,第三章习题讲解,2.设a=1,b=2,c=3,则u的值为:u=a?b:c; u=(a=2)?b+a:c+a;3.设a=1,b=2,c=0,则下列表达式的值为:a & ! (b | c) & !a)! (a
18、 & b) | c? a | b : a & b & c! (a+bc) & b=c*a-b,u=2,u=4,1,0,0,2022/11/30,高级语言程序设计,39,4.程序执行时将在哪些地方发生类型转换,程序打印的值是什么?,int f(int n, float m) return (m + n) / 4; int main() float y = 3;printf(“%dn”, f(y, y+1);return 0; ,1,2022/11/30,高级语言程序设计,40,conversion from float to int,conversion from float to int,8.
19、定义函数 double tmax(double, double,double),返回三个数中的最大的。,double tmax(double x, double y, double z)double max = x;if (y max) max = y;if (z max) max = z;return max;,2022/11/30,高级语言程序设计,41,10.四边形的边长为a,b,c,d及一对对角之和angel,求四边形的面积。,double QuaArea(double a, double b, double c, double d, double e)double s = (a+b+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 ppt 课件 上半 部分 复习题
链接地址:https://www.31ppt.com/p-1481286.html