您好,欢迎访问三七文档
C语言程序设计一、教学对象计算机科学与技术系新生(第二学期)二、教学目标程序设计的重要性程序设计的基本概念与基本方法编程解题的思路与典型方法数学模型简介算法及算法步骤程序结构与相应语句编码与上机调试绪论C语言程序设计三、教学重点1.程序设计的基本概念,基本方法;2.在C语言的环境下,学会如何针对问题进行分析,得出数学模型,理出算法并编程实现;3.有条有理有根有据的编程实践;4.养成良好的编程风格与习惯;5.重在思维方法的学习,鼓励创新。绪论C语言程序设计四、指导思想1.立足改革,以培养高素质有创造精神的人才为这门课的教学目标。2.以学生为中心,采用与现实生活贴切和具有趣味性的实例进行讲解,有利于调动学生学习的积极性,引导学生主动学习。3.强化实践,这门课主张程序设计是高强度的脑力劳动,不是听会的、也不是看会的,而是练会的。引导学生在解题编程的实践中探索其中带规律性的认识。将感性认识升华到理性高度。绪论C语言程序设计五、学习方法1.动手动脑,理论指导下的实践有条有理的实践。2.在编写大量程序之后,才能感到运用自如。绪论C语言程序设计六、教学内容安排1.简单C程序设计;2.分支结构程序设计;3.循环结构程序设计;4.数组;5.函数;6.递归及其实现方法7.指针;8.结构体与链表。绪论C语言程序设计1.1认识C语言程序1.程序实例#includestdio.h//预编译命令,将标准输入输出函数//作为头文件包扩到用户源文件中#includemath.h//预编译命令,将系统提供的数学函数//作为头文件包扩到用户源文件中main()//主函数,名为main,{//函数体.开始floata,b,c;//声明部分.定义变量类型b=30.0;//执行部分.赋值语句a=sin(b*3.14159/180);//执行部分.赋值语句printf(“%f\n”,a);//执行部分.输出语句}//函数体.结束第一讲简单的C程序设计C语言程序设计1.2实例总结1.C程序结构预编译命令主函数main(){函数体开始声明部分执行部分}函数体结束第一讲简单的C程序设计C语言程序设计2.变量的类型整型:int长整型:long浮点型:float双精度型:double字符型:char用户自定义类型第一讲简单的C程序设计C语言程序设计3.声明的作用为变量分配内存单元,变量名作为内存单元的符号地址,这件事是在程序编译链接时完成的。4.变量其值可以改变的量,是内存单元的符号地址。通过符号b可以找到相应的存储单元地址,假设为1000。语句b=30.0;是将值30.0存放在地址为1000的存储单元。第一讲简单的C程序设计C语言程序设计5.对变量的赋值赋值符号“=”变量=表达式b=30.0;//读作将表达式的值30.0赋给变量ba=sin(b*3.14159/180);//读作将表达式(正弦函数)的值赋给变量a第一讲简单的C程序设计C语言程序设计6.变量赋值特点(1)先定义,后使用intd,e,f;定义三个变量为整数类型如未定义,则在编译时被查出,认为非法(2)变量未被赋值前,值为未知(3)对变量赋值过程是“覆盖”过程,用新值去替换旧(4)读出变量的值,该变量保持不变(5)参与表达式运算的所有变量都保持原来的值不变第一讲简单的C程序设计C语言程序设计变量赋值过程def未赋值前执行d=7执行e=d执行f=d+e执行d=d+1000-12349723431607234316077077148714第一讲简单的C程序设计C语言程序设计7.输出语句printf函数(格式输出函数)一般形式为printf(参数1,参数2,参数3,……,参数n)其中参数1——格式控制参数2,参数3,……,参数n——输出表列举例:floata;intb;a=85.56;b=100;printf(%f%d,a,b);第一讲简单的C程序设计C语言程序设计格式控制是用双引号括起来的字符串,称“转换控制字符串”%f——第一个输出表列的格式说明,以小数形式输出单、双精度实数,隐含输出6位小数%d——第二个输出表列的格式说明,以带有符号的十进制形式输出整数(正数不输出符号)显然,%f是控制实数a的;%d是控制整数b的第一讲简单的C程序设计C语言程序设计为了醒目,格式控制项中除格式说明之外可以有•普通字符例:printf(“a=%fb=%d,a,b);输出结果为:a=85.560000b=100•换行符号例:printf(“a=%f\nb=%d”,a,b);输出结果为:a=85.560000b=100•域宽和精度例:printf(”%5.3f”,a);第一讲简单的C程序设计C语言程序设计8.数学函数sin(x)x为弧度,doublex,doublesin(x)cos(x)cos(x)exp(x)exlog(x)logexlog10(x)log10xfabs(x)xfmod(x,y)整除x/y的余数floor(x)求不大于x的最大整数pow(x,y)xysqrt(x)x1/2第一讲简单的C程序设计C语言程序设计9.算术运算符+加-减*乘/除%模(取余数)第一讲简单的C程序设计C语言程序设计1.3作业第一讲简单的C程序设计C语言程序设计我们在日常生活中经常需要处理具有两个分支的问题,例如,如果明天下雨,则在教室内组织活动,否则去野游。在C语言中,这类问题需要使用if语句解决,而判断操作通常使用关系运算符。关系运算符和关系表达式大于小于=大于等于=小于等于==等于!=不等于第二讲分支结构C语言程序设计2.1掌握if语句的使用方法【实例】编写程序,判断输入的整数是否为6,若是,显示“Right!”和“Great!”,否则显示“Wrong!”和“Sorry!”。1.编程思路:要显示“Right!”和“Great!”,应执行两条语句“printf(”Right!\n“);”和“printf(”Great!\n“);”,要显示“Wrong!”和“Sorry!”,执行两条语句“printf(”Wrong!\n“);”和“printf(”Sorry!\n“);”。本题需要根据所输入的值(假设赋给a)是否为6来选择执行相应的两条语句。在C语言中判断a中的值是否为6,使用“if(a==6)”形式。第二讲分支结构C语言程序设计本实例的流程图如图所示开始输入a值a==6显示“Right!”显示“Great!”显示“Wrong!”显示“Sorry!”结束假真第二讲分支结构C语言程序设计本实例的N-S流程图如图所示输入a的值a==6显示“Right!”显示“Great!”显示“Wrong!”显示“Sorry!”第二讲分支结构C语言程序设计2.程序代码:#includestdio.hmain(){inta=0;printf(Inputa:);scanf(%d,&a);printf(a=%d\n,a);if(a==6)/*if语句开始*/{printf(Right!\n);printf(Great!\n);}else{printf(Wrong!\n);printf(Sorry!\n);}/*if语句结束*/}第二讲分支结构C语言程序设计3.运行结果:第1次运行结果:Inputa:6回车a=6Right!Great!第2次运行结果:Inputa:5回车a=5Wrong!Sorry!第二讲分支结构C语言程序设计4.归纳分析:(1)程序中的“a==6”是关系表达式。用关系运算符把两个C语言表达式连接起来的表达式称为关系表达式。关系运算的判断结果只有“真”或“假”两种可能,关系成立时为“真”,不成立时为“假”。关系表达式的值只能是1或0,当关系运算的判断结果为“真”时,关系表达式的值为1,否则,关系表达式的值为0。例如,当a的值为6时,关系表达式“a==6”的值为1,当a的值为5时,关系表达式“a==6”的值为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语言中允许程序中的if语句不带else部分。省略else的if语句一般形式如下:if(表达式){语句组}此if语句的执行过程:当表达式结果为“真”时,执行语句组,表达式结果为“假”时,不处理。第二讲分支结构C语言程序设计2.2学会使用逻辑运算符处理问题时经常需要同时判断多个条件。例如,在某学生数学和英语成绩中判断是否至少有一门课程是不及格。这时使用逻辑运算符。逻辑运算符共有三种:&&逻辑与||逻辑或!逻辑非这3个运算符按高到低的优先级顺序是“!”、“&&”、“||”一般而言,单目运算符优先级较高,赋值运算符优先级低。算术运算符优先级较高,关系和逻辑运算符优先级较低。第二讲分支结构C语言程序设计【实例】编写程序,判断某人的体重是否在50公斤至55公斤之间,若在此范围之内,显示“Ok”,否则显示“No”。1.编程思路:先将体重存放在变量w中,要使w的值在50至55范围内,应同时满足“w=50”和“w=55”。在C语言中用“w=50&&w=55”表示w的值是否同时满足“w=50”和“w=55”。输入体重w的值w=50&&w=55显示“Ok”显示“No”第二讲分支结构C语言程序设计2.程序代码:#includestdio.hmain(){floatw=0.0;printf(Inputw:);scanf(%f,&w);printf(w=%.1f\n,w);if(w=50&&w=55)printf(Ok\n);elseprintf(No\n);}第二讲分支结构C语言程序设计3.运行结果:第1次运行结果:Inputw:53.5回车w=53.5Ok第2次运行结果:Inputw:60.7回车w=60.7No第二讲分支结构C语言程序设计4.归纳分析:程序中的“w=50&&w=55”是逻辑表达式。用逻辑运算符把两个C语言表达式连接起来的表达式称为逻辑表达式。逻辑运算的判断结果也只有“真”或“假”两种可能,逻辑运算的规则如下:逻辑与:1&&1=1,其它为0逻辑或:0||0=0,其它为1逻辑非:!0为1,!1为0,!2为0,!a为0(当a不为0时)逻辑表达式的值也只能是1或0,当逻辑运算的判断结果为“真”时,逻辑表达式的值为1,否则,逻辑表达式的值为0。第二讲分支结构C语言程序设计2.3学会使用嵌套的if语句有些问题必须在满足某种条件后,再继续分支处理。例如,某单位男职工60岁退休,女职工55岁退休,为了判断某职工是否应退休,首先要判断该职工是男职工还是女职工,然后再根据职工性别判断年龄是否到规定年龄。这时需要使用嵌套的if语句。第二讲分支结构C语言程序设计【实例】编写程序,判断若输入的体重大于0且小于200,再判断该体重是否在50公斤至55公斤之间,若在此范围之内,显示“Ok”,否则显示“No”;若所输入的体重不大于0或不小于200,则显示“Dataover!”。1.编程思路:在上实例中,输入w的值后立刻用if语句实现选择执行“printf(“Ok\n);”或“printf(No\n);”的功能,但由于本题目是在w的值大于0且小于200的情况下,才能执行此if语句,所以在此if语句外面还需要套另一个if语句。第二讲分支结构C语言程序设计本实例的程序流程图:课堂作业:请根据此图画出其N-S流程图。开始输入w值w0且w200显示“Ok”显示“Dataover!”结束假真w≥50且w≤55真假显示“No”第二讲分支结构C语言程序设计2.程序
本文标题:C语言教程基础篇
链接地址:https://www.777doc.com/doc-3563466 .html