《C程序设计》---黄淮学院精品课程建设平台

上传人:xmg****18 文档编号:113629448 上传时间:2019-11-09 格式:PPT 页数:39 大小:326.50KB
返回 下载 相关 举报
《C程序设计》---黄淮学院精品课程建设平台_第1页
第1页 / 共39页
《C程序设计》---黄淮学院精品课程建设平台_第2页
第2页 / 共39页
《C程序设计》---黄淮学院精品课程建设平台_第3页
第3页 / 共39页
《C程序设计》---黄淮学院精品课程建设平台_第4页
第4页 / 共39页
《C程序设计》---黄淮学院精品课程建设平台_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《《C程序设计》---黄淮学院精品课程建设平台》由会员分享,可在线阅读,更多相关《《C程序设计》---黄淮学院精品课程建设平台(39页珍藏版)》请在金锄头文库上搜索。

1、 C语言程序设计案例教程,Huanghuai University Department of Information Engineering,主讲:傅 丰 黄淮学院信息工程学院,北京大学出版社,汪新民、刘若慧主编,自我介绍,傅丰 1969年4月19日戍时生 O型血、白羊座 工作经历:从教21年 专业:数学计算机 Tel:2853011 QQ:10840899 Email:fu_feng,一、课程的基本要求: 1、掌握C语言的语法规则,数据类型;掌握C程序的结构。 2、学习运用高级语言进行程序设计的思想和方法。 3、熟悉并掌握一些基本算法和程序设计技术,并能用C语言解决实际问题。 二、课程设置

2、目的: 本课程是计算机专业学生的基础课,是一门理论性和实践性较强的课程。 通过本课程的学习掌握传统的结构化程序设计的一般方法,培养严谨的程序设计思想和较强的动手能力,并以此为基础逐渐掌握复杂软件的设计和开发手段,为后序课程的学习打下扎实的理论和实践基础。,课程简介,1、C语言程序设计,何钦铭、颜晖主编,高等教育出版社 2、C语言程序设计,谭浩强主编,清华大学出版社 3、C语言程序设计教程 ,苏小红等著,高等教育出版社 4、C语言程序设计实习指导与习题集 ,谭浩强等编著,清华大学出版社 5、C语言程序设计,夏宽理编著,复旦大学出版社,参考资料,开复学生网: 给中国学生的第五封信你有选择的权利 (

3、主题思想:积级主动),记忆语法、思考算法。 读懂程序、循序渐进。 记好笔记、上机调试。,学习方法,第一章 C语言概述,1 程序设计语言概述 2 用库函数组装C程序 3 自己设计C函数 课后作业 上机任务,1 程序设计语言,一、计算机语言的种类,机器语言,汇编语言,高级语言,面向机器,面向过程,面向对象,二、程序翻译方式,解 释,编 译,边翻译边执行 不产生目标代码,先翻译后执行 产生目标代码,Basic,C、C+,例如:,X=1 Y=2 Print X+Y,main( ) int x , y; x=1; y=2; printf(“%d,%dn”,x,y); ,Basic源程序,C源程序,01代

4、码,01代码,01代码,01代码,执行,执行,执行,解 释,01代码,执行,编 译,目标 程序,三、程序语言的运行环境,裸机,操作系统,语言编译系统,用户编写的源程序,四、C语言编译系统,Visual C+6.0,可视化开发环境 Windows界面 编译C+程序,五、C语言程序的调试、运行步骤,2 用库函数组装C程序,例1:显示一行信息。,main( ) printf (“This is a C programn”); ,main为函数名,表示主函数,( )内为函数参数,无参时()不能省。每个函数完成独立的功能。一个程序必须有一个主函数,程序从主函数开始执行。, 内为函数体,printf是标准

5、函数库中的输出函数,在屏幕上显示指定内容。“”表示字符串,按原样输出。n为转义字符(换行符)。,一、C语言程序是由函数组成的。,说明部分,执行部分,由若干语句组成,语句以“;”号结束,定义函数用到的数据类型(可以没有说明部分),运行结果: This is a C program,main( ) printf(“Programming n”); printf(“is fun.n”); ,运行结果: Programming is fun.,举例:对比程序,理解n的作用。,main( ) printf(“Prog”); printf(“ramming i”); printf(“s fun.n”);

6、,运行结果: Programming is fun.,main函数调用printf函数,main,printf,例2:计算正弦值。,#include “math.h” main( ) float x; /*说明x为实型变量*/ x=sin(0.19199); /*调用sin函数*/ printf(“%f n”, x); ,二、编译系统的库文件提供的库函数,运行结果: 0.190813,%f为格式字符 ,此处用“”后对应的变量值代替。 %f实型、%d十进制整数、%c字符、 %s字符串、%o八进制整数,P352附录IV,math.h为数学库函数头文件。用库函数 前应用预处理命令声明(末尾不带;号)

7、,说明 部分,执行 部分,/*与*/之间为注释,不编译不执行,库函数头文件: 数学:math.h 字符:ctype.h 字符串:string.h 输入输出:stdio.h 动态分配:malloc.h,main调用sin和printf函数,1补充举例,2说明,补充:举例说明格式字符的用法,#include main( ) /*两数之和*/ int a,b,sum; /*声明部分*/ a=123; b=456; /*赋值语句*/ sum=a+b; printf(“sum is %dn”,sum); ,运行结果: sum is 579,思考输出结果: printf(“%d+%d=%dn”,a,b,s

8、um);,例:求两数之和。,返回,1、一个函数可以调用另一个函数,但任何函数不能 调用main函数。,#include “math.h” main( ) printf(“%f n”, sin(0.19199) ); ,main调用printf函数, printf又调用sin函数,说明:,main,printf,sin,一行内可写多条语句,一个语句可能分写在多行上; 每条语句最后必须有一个;号。 可以用/* */做注释,增加程序的可读性。 区分大小写。如:sum和Sum为两个不同的变量。 建议采用内缩对齐格式书写,使程序清晰。 一个函数可以没有声明部分,甚至可以两者都没有。如: void dum

9、p() 空函数,什么也不做,但合法 ,2、C程序的书写格式:,三、课堂练习:,P15:6、求函数值:log90、e2.5678、,#include “math.h” main( ) float x; x=log10(90); printf(“%f n”, x); ,x=exp(2.5678);,x=sqrt(5);,3 自定义函数,标准库函数,用户自定义函数,用预处理命令: #include “头文件名” 声明后便可使用,需用户自己定义 函数后才能使用,函 数,若在函数库中找不到所需函数时,需要自己定义函数,例3:求三个数的平均值。,main( ) /*主函数*/ float a, b, c,

10、 ave; a=3.5; b=4.6; c=7.9; ave=average(a, b, c); printf(“average= %fn”, ave); ,/*自定义函数*/ float average(float x, float y, float z) float aver; aver=(x+y+z)/3; return(aver); ,数据类型: float 实型(单精度) int 整型 char 字符型 double 实型(双精度),旧风格: float average(x, y, z) float x, y,z;,函数首部,函数体,函数值类型 函数名(变量类型 变量名,) 说明部分

11、;/*声明用到的量*/ 执行部分;/*return一般在最后,可没有*/ ,两种放置顺序:,float average(float x, float y, float z) /*自定义函数*/ float aver; aver=(x+y+z)/3; return(aver); main( ) /*主函数*/ float a, b, c, ave; a=3.5; b=4.6; c=7.9; ave=average(a, b, c); /*函数调用*/ printf(“average= %fn”, ave); ,先定义后使用的顺序:,main( ) /*主函数*/ float average(fl

12、oat x, float y, float z); /*调用声明*/ float a, b, c, ave; a=3.5; b=4.6; c=7.9; ave=average(a, b, c); /*函数调用*/ printf(“average= %fn”, ave); float average(float x, float y, float z) /*自定义函数*/ float aver; aver=(x+y+z)/3; return(aver); ,定义在后的顺序: (需在调用函数的说明部分写调用声明语句),例4:求任意三个数的平均值。,main( ) /*主函数*/ float ave

13、rage(float x, float y, float z); /*调用声明*/ float a, b, c, ave; a=3.5; b=4.6; c=7.9; ave=average(a, b, c); /*函数调用*/ printf(“average= %fn”, ave); float average(float x, float y, float z) /*自定义函数*/ float aver; aver=(x+y+z)/3; return(aver); ,scanf(“%f, %f, %f”, ,运行结果: 输入3个实数,以逗号分开,如: 3.5, 4.6, 7.9 averag

14、e=5.333333,演示运行,注意地址运算符&和 格式字符%f间的逗号,例5:求两数中较大者。(教材有错:两实数不能比较大小),main( ) /*主函数*/ int a,b,c; scanf(“%d,%d”, ,运行结果: 输入:-10,5 max=5.000000,方法一,不使用自定义函数,main( ) /*主函数*/ void max(int x, int y); /*调用声明*/ int a,b,c; scanf(“%d,%d”,&a,&b);/*键盘输入*/ max(a,b); ,void max(int x,int y) if (xy) printf(“max=%dn”, x)

15、; else printf(“max=%dn”, y); ,运行结果: 输入:-10,5 max=5.00000,方法二,自定义函数无返回值,main( ) /*主函数*/ int max(int x, int y); /*调用声明*/ int a,b,c; scanf(“%d,%d”, ,int max(int x,int y) int z; if (xy) z=x; else z=y; return(z); ,运行结果: 输入:-10,5 max=5.000000,方法三,自定义函数有返回值,例6 (了解) :求1+2+3+10的值。,main( ) /*主函数*/ int sum,i; sum=0; i=1; while (i=10) sum=sum+i; i=i+1; printf(“%dn”, sum); ,运行结果: 55,方法一,不使用自定义函数,int f(int n) int sum, i; sum=0; i=1; while (i=n) sum=sum+i; i=i+

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号