《C语言程序设计课件》由会员分享,可在线阅读,更多相关《C语言程序设计课件(185页珍藏版)》请在金锄头文库上搜索。
1、C语言程序设计一、教学对象 高一新生(第一学期) 二、教学目标程序设计的重要性 程序设计的基本概念与基本方法 编程解题的思路与典型方法 数学模型简介 算法及算法步骤 程序结构与相应语句 编码与上机调试绪论绪论C语言程序设计三、教学重点三、教学重点 1. 1. 程序设计的基本概念,基本方法;程序设计的基本概念,基本方法; 2.2.在在 C C语言的环境下,学会如何针对问题进行分析语言的环境下,学会如何针对问题进行分析 ,得出数学模型,理出算法并编程实现;,得出数学模型,理出算法并编程实现; 3.3.有条有理有根有据的编程实践;有条有理有根有据的编程实践; 4.4.养成良好的编程风格与习惯;养成良
2、好的编程风格与习惯; 5.5.重在思维方法的学习,鼓励创新。重在思维方法的学习,鼓励创新。绪论绪论C语言程序设计四、指导思想 1. 立足改革,以培养高素质有创造精神的人才为这门 课的教学目标。 2. 以学生为中心,采用与现实生活贴切和具有趣味性 的实例进行讲解,有利于调动学生学习的积极性,引导 学生主动学习。3. 强化实践,这门课主张程序设计是高强度的脑力劳 动,不是听会的、也不是看会的,而是练会的。引导学 生在解题编程的实践中探索其中带规律性的认识。将感 性认识升华到理性高度。绪论绪论C语言程序设计五、学习方法 1.动手动脑,理论指导下的实践 有条有理的实 践。2.在编写大量程序之后,才能感
3、到运用自如。绪论绪论C语言程序设计六、教学内容安排 1. 简单C程序设计;2. 分支结构程序设计;3. 循环结构程序设计;4. 数组;5. 函数;6. 递归及其实现方法7. 指针;8. 结构体与链表。绪论绪论C语言程序设计1.1 认识C语言程序 1.程序实例 #include /预编译命令,将标准输入输出函数/作为头文件包扩到用户源文件中 #include /预编译命令,将系统提供的数学函数/作为头文件包扩到用户源文件中 main( ) /主函数,名为main, /函数体.开始 float a,b,c; /声明部分.定义变量类型 b=30.0; /执行部分.赋值语句 a=sin(b*3.141
4、59/180); /执行部分.赋值语句 printf(“%fn”,a); /执行部分.输出语句 /函数体.结束第一讲 简单的C程序设计C语言程序设计1.2 实例总结1.C程序结构预编译命令主函数 main( ) 函数体开始 声明部分 执行部分 函数体结束第一讲 简单的C程序设计C语言程序设计2.变量的类型整型:int 长整型:long浮点型:float双精度型:double字符型:char用户自定义类型第一讲 简单的C程序设计C语言程序设计3.声明的作用 为变量分配内存单元,变量名作为内存单元的 符号地址,这件事是在程序编译链接时完成的 。 4. 变量 其值可以改变的量,是内存单元的符号地址。
5、 通过符号b可以找到相应的存储单元地址,假设 为1000。语句b=30.0;是将值30.0存放在地址为1000的存储单元。第一讲 简单的C程序设计C语言程序设计5.对变量的赋值 赋值符号“=” b = 30.0;/ 读作将表达式的值30.0赋给变量b a=sin(b*3.14159/180);/ 读作将表达式(正弦函数)的值赋给变量a 第一讲 简单的C程序设计C语言程序设计6.变量赋值特点 (1)先定义,后使用 int d,e,f;定义三个变量为整数类型 如未定义,则在编译时被查出,认为非法 (2)变量未被赋值前,值为未知 (3)对变量赋值过程是“覆盖”过程,用新值去替换旧 (4)读出变量的值
6、,该变量保持不变 (5)参与表达式运算的所有变量都保持原来的值不变第一讲 简单的C程序设计C语言程序设计变量赋值过程d e f 未赋值前 执行d=7 执行 e=d 执行 f=d+e 执行 d=d+1 000-12349723431607234316077077148714第一讲 简单的C程序设计C语言程序设计7. 输出语句 printf函数(格式输出函数) 一般形式为 printf(参数1,参数2,参数3,参数n) 其中参数1格式控制 参数2,参数3,参数n输出表列 举例: float a; int b; a = 85.56; b = 100; printf(“%f %d“, a, b);第一
7、讲 简单的C程序设计C语言程序设计格式控制是用双引号括起来的字符串,称“转换控制字 符串” %f 第一个输出表列的格式说明,以小数形式输出 单、双精度实数,隐含输出6位小数 %d 第二个输出表列的格式说明,以带有符号的十 进制形式输出整数(正数不输出符号) 显然,%f是控制实数a的;%d是控制整数b的第一讲 简单的C程序设计C语言程序设计为了醒目,格式控制项中除格式说明之外可以有 普通字符 例: printf(“a=%f b=%d“, a, b); 输出结果为: a=85.560000 b=100 换行符号 例: printf(“a=%fnb=%d”,a,b); 输出结果为: a=85.560
8、000b=100 域宽和精度 例:printf(”%5.3f”,a);第一讲 简单的C程序设计C语言程序设计8. 数学函数 sin(x)x为弧度,double x,double sin(x) cos(x) cos(x) exp(x) ex log(x) logex log10(x) log10x fabs(x) x fmod(x,y) 整除x/y的余数 floor(x) 求不大于x的最大整数 pow(x, y) xy sqrt(x) x1/2第一讲 简单的C程序设计C语言程序设计9. 算术运算符 加 减 *乘 / 除 % 模(取余数)第一讲 简单的C程序设计C语言程序设计1.3 作业第一讲 简
9、单的C程序设计C语言程序设计我们在日常生活中经常需要处理具有两个分支的问题,例 如,如果明天下雨,则在教室内组织活动,否则去野游。在C语言中,这类问题需要使用if语句解决,而判断操 作通常使用关系运算符。 关系运算符和关系表达式大于=大于等于main() int a=0;printf(“Input a:“); scanf(“%d“,printf(“a=%dn“,a);if(a=6)/* if语句开始 */printf(“Right!n“);printf(“Great!n“);elseprintf(“Wrong!n“);printf(“Sorry!n“); /* if语句结束 */ 第二讲 分支
10、结构C语言程序设计3运行结果:第1次运行结果:Input a:6a=6Right!Great!第2次运行结果:Input a:5a=5Wrong!Sorry!第二讲 分支结构C语言程序设计4归纳分析: (1)程序中的“a=6”是关系表达式。 用关系运算符把两个C语言表达式连接起来的表达式称为关 系表达式。关系运算的判断结果只有“真”或“假”两种 可能,关系成立时为“真”,不成立时为“假”。 关系表达式的值只能是1或0,当关系运算的判断结果为“真 ”时,关系表达式的值为 1,否则,关系表达式的值为0 。例如,当a的值为6时,关系表达式“a=6”的值为1, 当a的值为5时,关系表达式“a=6”的值
11、为0。第二讲 分支结构C语言程序设计(2)程序中的“if(a=6)”是if语句的开始部分。本例题需要根据“a=6”是否为“真”来选择执行不同 的两个输出语句。处理两个分支的问题时常使用if语句。if 语句根据其后面括号中表达式的结果,选择执行某个分支程 序段。if语句的一般形式如下:if(表达式) 语句组1 else 语句组2 “if”和“else”是关键字。当表达式结果为“真”(即不 等于0)时,执行语句组1,表达式结果为“假”(即等于0 )时,执行语句组2。在语句组1和语句组2中只能选择执行 一组,而后执行整个if语句后面的语句。 第二讲 分支结构C语言程序设计(3) C语言中允许程序中的
12、if语句不带else部分。 省略else的if语句一般形式如下:if(表达式)语句组此if语句的执行过程:当表达式结果为“真”时,执行语句组,表达式结果 为“假”时,不处理。 第二讲 分支结构C语言程序设计2.2学会使用逻辑运算符 处理问题时经常需要同时判断多个条件。例如,在 某学生数学和英语成绩中判断是否至少有一门课程是不 及格。这时使用逻辑运算符。 逻辑运算符共有三种:printf(“Input w:“);scanf(“%f“,printf(“w=%.1fn“,w);if(w=50 printf(“Input x:“);scanf(“%f“,if(x main() float a=5.0,
13、b=2.0,c=0.0; char sym=0; printf(“Please choosen“); printf(“+ : additionn“); printf(“- : subtractionn“); printf(“* : multiplicationn“); printf(“/ : divisionn“); sym=getchar(); printf(“%f%c%f=“,a,sym,b); /* 显示算式 */第二讲 分支结构C语言程序设计switch(sym) /* 计算算式 */case +: c=a+b; break;case -: c=a-b; break;case *: c
14、=a*b; break;case /: c=a/b; break; printf(“%fn“,c); /* 显示结果 */ 第二讲 分支结构C语言程序设计2运行结果: Please choose + : addition - : subtraction * : multiplication / : division / 5.000000/2.000000=2.500000 第二讲 分支结构C语言程序设计3归纳分析: switch语句的一般形式为: switch(表达式) case 表达式1: 语句组1 break;case 表达式2: 语句组2 break; case 表达式n: 语句组n b
15、reak;default: 语句组n+1 break; 其中switch、case、default和break是关键字,所有表达式均 为整型或字符型。在表达式1、表达式2、表达式n中只 能出现常量和运算符,而且每个表达式的值不能相等。 第二讲 分支结构C语言程序设计2.6 条件运算符及其表达式 C语言中条件运算符由“?”和“:”组成,例如“ab ? a : b”。 条件表达式的一般形式为: 表达式1 ?表达式2 :表达式3 当表达式1的值为非0时,以表达式2的值作为条件表达式的 值,否则,以表达式3的值作为条件表达式的值。例如, 当ab成立时,条件表达式“ab ? a : b”的值为a中的 值,否则为b中的值。使用条件表达式也可以实现分支结构。 第二讲 分支结构C语言程序设计课堂讨论:谁做的好事?忻州师院有四位同学中的一位做了好事,不留名,表扬信 来了之后,校长问这四位是谁做的好事。