C语言程序设计项目教程.ppt
《C语言程序设计项目教程.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计项目教程.ppt(230页珍藏版)》请在三一办公上搜索。
1、高等职业教育“十二五”规划教材公共课系列,C语言程序设计项目教程,目录,由浅入深的知识点介绍,循序渐进的技能培养,基础篇,1,项目1 通讯录信息输出项目2 个人所得税计算项目3 计算器设计项目4 猜数字游戏,项目1 通讯录信息输出,学习情境项目分析项目目标项目实现,相关知识总结提高技能训练,学习情境,通讯录主要是为方便记录、查询同学、朋友、同事和亲戚等的联系方式、通讯地址,便于联系而建立的。在这个项目里我们主要学习C程序的编写格式、运行方法以及输入/输出函数的使用。,通讯录信息输出主界面,通讯录信息输出显示结果,项目分析,本项目根据通讯录的具体情况,分析出需要输出的数据及数据类型,定义变量。根
2、据提示录入通讯录信息,最后在屏幕上显示输出通讯录信息。程序结构设计如下:主函数()声明变量、变量赋值;根据提示录入通讯录信息;在屏幕上显示输出通讯录信息;该程序的结构是顺序结构。使用格式化输入输出函数,实现录入及显示不同格式的通讯录信息。,项目目标,知识目标 掌握C语言的基础知识,了解C语言的数据类型,了解常量和变量的概念,掌握变量的定义以及为它们赋值的方法,熟悉输入/输出函数、库函数的使用,了解C程序的特点,掌握编辑、编译、链接和运行一个C语言程序的方法和步骤。能力目标 培养学生使用集成开发环境进行软件开发、调试的综合能力。素质目标 使学生养成良好的编程习惯,具有团结协作的团队精神,具备岗位
3、需要的职业能力。,项目实现,任务一:分析需要输出的数据及数据的类型任务二:声明变量、对变量进行赋值任务三:根据提示录入通讯录信息任务四:在屏幕上显示通讯录信息任务五:在Turbo C环境下编写运行C语言程序,任务一:分析需要输出的数据及数据的类型,整理QQ通迅录中涉及的数据。,任务二:声明变量、对变量进行赋值,int id;char name20;char sex;int age;char telephone_num12;long int qq_num;char msn_num30;char E_mail50;char city20;char profession30;char address
4、60;,该任务涉及的知识点有整型变量和字符型变量的定义方法。把表中各字段用相应类型的变量定义出来。,任务三:根据提示录入通讯录信息,printf(please input id number:n);scanf(%d,scanf函数输入时,分别用到了%s、%d、%c、%ld等格式控制符。,该任务涉及的知识点有printf函数和scanf函数的使用方法,通过printf函数输出一个提示输入的字符串,利用scanf函数来实现变量的输入。,任务四:在屏幕上显示通讯录信息,为了实现美观性,printf函数中还用到了“”,作为表头装饰字符。printf(nn);printf(TongXunLu-%s n,
5、name);printf(n);printf(ID:tt%dn,id);printf(Name:tt%sn,name);printf(Sex:tt%cn,sex);printf(Age:tt%dn,age);printf(Tel_number:t%sn,telephone_num);printf(QQ number:t%ldn,qq_num);printf(MSN_ number:t%sn,msn_num);printf(E-mail:tt%sn,e_mail);printf(City:tt%sn,city);printf(Profession:t%sn,profession);printf(
6、Address:t%sn,address);printf(n);,该任务利用多个printf函数来实现最终通讯录的输入。,任务五:在Turbo C环境下编写运行C语言程序,在编译时在源程序编写过程中出现的错误,称为语法错误。在连接的过程中也可能发现错误,称为逻辑错误,应尽可能避免。运行包括:(1)应用运行:指程序正式投入使用后的运行,是通过程序运行完成预先设定的功能。(2)测试运行:指应用运行前的试运行,是为了验证整个应用系统的正确性。(3)调试运行:专门为验证某些函数的正确性而进行的。运行时,通过输入一些特定的数据,观察程序是否按预期的输出。,从C语言源程序到最后能够运行一般要经过如下4个步
7、骤:1编辑源程序2编译3连接4运行,相关知识,C语言基础:数据类型、常量、变量C程序的结构特点C程序输入输出操作C程序的开发过程及环境,C语言基础:数据类型、常量、变量,数据类型为了便于C语言的数据处理,合理地使用存储空间,将数据划分为不同的类型,进行分类处理。,C语言基础:数据类型、常量、变量,#includevoid main()int a;int b;int c;a=120:/为变量赋初值/b=0120;c=0 x120;printf(%dt%dt%dn,a,b,c);/按十进制输出变量的值/printf(%ot%ot%on,a,b,c);/按八进制输出变量的值/printf(%xt%x
8、t%xn,a,b,c);/按十六进制输出变量的值/,常量整型常量:即整常数。包括十进制整数,八进制整数:用以0开头的数表示。十六进制整数:用以0 x开头的数表示。实型常量:是文字形式的实数。包括常规方法和科学记数法。字符型常量:用单引号括起来的一个字符。还有不可显示的字符,叫做转义字符,字符串常量:也叫字符串,是用一对双引号界定的字符序列,如China、A和This is a simple program!等。,转义字符,C语言基础:数据类型、常量、变量,声明三个整型变量a,b,c和两个浮点型变量x,y,可用如下格式:int a,b,c;float x,y;在声明变量的时候可以给变量赋以初值,
9、如:int d=84;float z=17.85;char c=x;,变量变量是在程序的运行过程中,其值可以根据需要变化的量。变量需要有自己的名字来标识和被引用,同时每个变量都有自己的数据类型。因此变量在使用之前,需要首先声明其类型和名称。变量的声明格式如下:数据类型 变量名1,变量名 2,变量名n;注意:变量说明必须放在变量使用之前。一般放在函数体的开头部分。,C程序的结构特点,【例1】已知三角形三条边的长度(键盘输入),求三角形面积。#include#includevoid main()double x,y,z,p,s;scanf(%lf,%lf,%lf,输入3,4,5回车,程序运行结果如
10、下:s=6.000000,一个C语言源程序可以由一个或多个源文件组成。每个源文件可由一个或多个函数组成。一个源程序只有一个main函数。一个函数由函数头和函数体组成。预处理命令通常应放在源文件或源程序的最前面。每一条语句必须以分号结尾。但预处理命令、函数头和花括号“”之后不加分号。标识符、关键字之间必须至少加一个空格间隔。若已有明显的间隔符,也可不再加空格来间隔。,常用的数学函数,C程序的结构特点,【例2】已知半径求圆面积。#includevoid main()float PI=3.14159;int s,r=5;s=rrPI;printf(s=%dn,s);程序运行结果如下:s=78【例3】
11、字符变量参与数值运算。#includevoid main()char a,b;a=a;b=b;a=a-32;b=b-32;printf(%c,%cn%d,%dn,a,b,a,b);程序运行结果如下:BA,65,66,书写规则一个说明或一个语句占一行。用括起来的部分,通常表示程序的某一层次结构。一般与该结构语句的第一个字母对齐,并单独占一行。低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写,以便看起来更加清晰,增加程序的可读性。,C程序输入输出操作,1赋值语句在赋值表达式的尾部加上“;”就构成了赋值语句。注意:1)赋值符“=”右边的表达式也可以又是一个赋值表达式。2)给变量赋初值是变
12、量说明的一部分,赋初值后的变量与其后的其他同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。3)在变量说明中,不允许连续给多个变量赋初值。4)赋值表达式是可以出现在任何允许表达式出现的地方,而赋值语句则不能。,a=b=c=d=e=5;按照赋值运算符的右接合性,因此实际上等效于:e=5;d=e;c=d;b=c;a=b;“if(x=y+5)0)z=x;”,它的功能是若表达式“x=y+5”大于0则z=x。下述语句是非法的:“if(x=y+5;)0)z=x;”,因为“x=y+5;”是赋值语句,不能出现在表达式中。,C程序输入输出操作,输出格式控制是用双引号括起来的字符串,主要作用如下:1)格式
13、说明,将要输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的,后跟一格式字符,例如“%d”。2)提供需要原样输出的文字或字符。调用printf函数时,格式控制符与输出表列从左到右在类型上一一匹 配。如果想输出字符“%”,那么应该在格式控制字符串中用连续两个%表示。例如:“printf(%f%,1.0/3);”则输出0.333333%。输入格式控制是指定数据输入的转换格式,输入地址表列必须是合法的地址表达式,在使用scanf函数时应注意:1)输入地址表列应是变量地址,而不是变量名。2)若要输入long型数据,在%和d之前必须加1,输入double型数据时,在%和f(e)之间也必须加1
14、,否则得不到正确的数据。3)格式说明的类型与输入对象在类型上应该一一对应匹配,个数也应相同。4)格式字符前可用一个整数指定输入数据所占宽度,但不能对实型数指定小数位宽度。5)用scanf函数输入多个数值型数据时,数据之间用分隔符隔开,可以是空格符、回车符或制表符(Tab键)。6)如在格式控制符字符串中有格式字符以外的字符,那么在组织数据输入时必须原样输入。7)用scanf函数输入多个字符型数据时,当输入数据少于变量数时,空格符、回车符、制表符都将作为间隔符读入。,2输入/输出语句C语言通过调用标准库函数提供的输入和输出函数实现数据的输入与输出。(1)格式化输入输出函数输出函数printf(),
15、一般调用形式如下:printf(输出格式控制,输出表列);输入函数scanf(),一般调用形式如下:scanf(输入格式控制,输入地址表列);,C程序输入输出操作,putchar函数只能向终端输出一个字符。【例】#include void main()char a=B,b=o,c=k;putchar(a);putchar(b);putchar(b);putchar(c);putchar(t);putchar(a);putchar(b);putchar(n);putchar(b);putchar(c);getchar函数只能从输入终端接收一个字符。在输入时,空格符、回车符、制表符都将作为字符读入
16、,只有当输入回车键时,读入才开始执行。使用getchar函数还应注意几个问题:1)getchar函数只能接受单个字符,2)在TC屏幕下运行含本函数程序时,将退出TC屏幕进入用户屏幕等待用户输入。输入完毕再返回TC屏幕。,2输入/输出语句(2)字符输入输出函数实现字符的输入与输出,注意在使用前必须在程序文件开始加上#include。输出函数putchar(),一般调用形式如下:putchar(输出项);输入函数getchar(),一般调用形式如下:char ch;ch=getchar();,C程序输入输出操作,Gets输入函数说明:从键盘输入的字符串内容可以含有空格,按回车键则结束串的输入。,2
17、输入/输出语句(3)字符串的输入输出函数gets输入函数,等待用户从键盘输入一个字符串给计算机,形式如下:gets(字符型数组名或字符型指针名);puts输出函数,将字符型数组名或字符型指针名指示的内存空间存放的字符串内容显示于屏幕当前光标处。形式如下:puts(字符型数组名或字符型指针名或字符串常量);,C程序的开发过程及环境,Turbo C 2.0(1)Turbo C 2.0的启动 找到tc.exe并运行它。(2)源程序和建立编辑通过“File”菜单中的“New”命令建立新的源程序。已存在的文件,可通过“File”菜单中的“Load”命令,或直接按F3键,将程序调入编辑区。保存编辑修改过的
18、程序,可通过“File”菜单下的“Save”或“Write to”命令来实现,也可直接按F2键来完成。(3)源程序的编译、连接和运行执行“Run”命令来进行编译和连接。进入运行状态。或直接按Ctrl+F9键来完成。对运行结果,可通过“Run”菜单中的“User screen”命令或按Alt+F5键进入用户窗口查看。VC+6.0(1)VC+6.0的启动在“开始”菜单中选择“程序”菜单,进入VC+编辑窗口。(2)编辑C源程序选择“File”菜单中的“New”命令,弹出“New”对话框,在对话框中选择“File”选项卡,再选择“C+Source File”,在“File”下面填上源文件名,注意一定要
19、加上扩展名.c,在Location下面选择文件的存放目录。上述工作做完后单击OK按钮,回到编辑窗口,此时编辑窗口为白色,并且有输入焦点,可进行编辑、编译、连接和运行等操作。,C语言编程平台1、Turbo C 2.02、Visual C+6.0(简称VC+6.0)。,总结提高,printf格式控制符的完整格式scanf格式控制符的完整格式,printf格式控制符的完整格式,(1)完整格式格式字符:%、-、0、m.n、l或h。1)%:表示格式说明的起始符号,不可缺少。2)-:有-表示左对齐输出,如省略表示右对齐输出。3)0:有0表示指定空位填0,如省略表示指定空位不填。4)m.n:m指域宽,即对应
20、的输出项在输出设备上所占的字符数。n指精度,用于说明输出的实型数的小数位数。未指定n时,隐含的精度为n=6位。5)l或h:l对应整型指long型,对应实型指double型。h用于将整型的格式字符修正为short型。(2)格式字符格式字符用以指定输出项的数据类型和输出格式。1)d格式:用来输出十进制整数。2)o格式,以无符号八进制形式输出整数。3)x格式,以无符号十六进制形式输出整数。4)u格式,以无符号十进制形式输出整数。5)c格式,输出一个字符。6)s格式,用来输出一个串。7)f格式,用来输出实数(包括单、双精度),以小数形式输出。8)e格式,以指数形式输出实数。9)g格式,自动选f格式或e
21、格式中较短的一种输出,且不输出无意义的零。关于printf函数的进一步说明:对于单精度数,使用%f格式符输出时,仅前7位是有效数字,小数6位。对于双精度数,使用%lf格式符输出时,前16位是有效数字,小数6位。,完整格式格式字符,scanf格式控制符的完整格式,(1)完整格式格式字符:%、m、l或h。1)格式字符与printf函数中的使用方式相同,有%d、%o、%x、%c、%s、%f、%e,无%u格式、%g格式。2)可以指定输入数据所占列宽,系统自动按它截取所需数据。3)%后的“”为附加说明符,用来表示跳过它相应的数据。4)输入数据时不能规定精度。(2)输入数据流分隔1)根据格式字符的含义从输
22、入流中取得数据,当输入流中数据类型与格式字符要求不符时,就认为这一项结束。2)根据格式项中指定的域宽分隔出数据项。3)隐示分隔符:空格、跳格符(t)、换行符(n)都是C语言认定的数据分隔符。4)显示分隔符:在输入数据时,在两个数据之间必须以这一个或多个字符分隔,关于scanf函数的进一步说明1)scanf函数中的格式控制后面应当是变量地址,而不应是变量名。2)如果在格式控制字符串中除了格式说明以外还有其他字符,则在输入数据时应输入与这些字符相同的字符。3)在用“%c”格式输入字符时,空格字符和转义字符都作为有效字符输入。4)scanf中不使用u说明符,对unsigned型数据用d、o、x说明符
23、输入。,完整格式输入数据流分隔,技能训练,自主训练拓展训练,自主训练,#include void main()char name10;/用来存放学生姓名/char id10;/用来存放学号/float yuwen;/实型变量yuwen,用来存放语文成绩/float yinyu;/实型变量yinyu,用来存放英语成绩/float shuxue;/实型变量shuxue,用来存放数学成绩/float jisuanji;/实型变量jisuanji,用来存放计算机成绩/float zhengzhi;/实型变量zhengzhi,用来存放政治成绩/float tiyu;/实型变量tiyu,用来存放体育成绩/
24、float zongfen;/实型变量zongfen,用来存放总分/float pingjunfen;/实型变量pingjunfen,用来存放平均分/clrscr();printf(please input students name:n);scanf(%s,name);printf(please input students id:n);scanf(%s,id);printf(please input yuwen:n);scanf(%f,训练内容:输出学生成绩。说明:学生成绩包括学号、姓名以及各科成绩、总分和平均成绩。首先定义字符型数组存放学生的姓名和学号,再定义多个实型变量用来存放学生各科
25、成绩,最后利用输出变量值的方式来输出各科成绩,直接输出表达式值的方式来输出总分和平均分。,printf(please input shuxue:n);scanf(%f,拓展训练,#include void main()char name10;/用来存放职工姓名/char id10;/用来存放职工编号/float jbgz;/实型变量jbgz,用来存放基本工资/float gwjt;/实型变量gwjt,用来存放岗位津贴/float jbf;/实型变量jbf,用来存放加班费/float jj;/实型变量jj,用来存放奖金/float sdf;/实型变量sdf,用来存放水电费/float grsds
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 项目 教程
链接地址:https://www.31ppt.com/p-5426466.html