1、C语言上机实验1ppt课件上机安排地点地点 科研二号楼(A区)五楼成绩成绩 上机报告10分 上机考试10分时间时间 周四晚6:50-9:50 8次共32学时周次日期内容地点409.27C C程序结构和数据类型508+506610.11顺序与选择结构508+506710.18循环结构508+506810.25数组508+506911.01函数508+5101011.08函数508+5061111.15指针508+5061311.29上机考试504+5022ppt课件精品资料 你怎么称呼老师? 如果老师最后没有总结一节课的重点的难点,你是否会认为老师的教学方法需要改进? 你所经历的课堂,是讲座式还
2、是讨论式? 教师的教鞭 “不怕太阳晒,也不怕那风雨狂,只怕先生骂我笨,没有学问无颜见爹娘 ” “太阳当空照,花儿对我笑,小鸟说早早早”上机要求上机预备上机预备 多读:读懂课堂及教材的程序,体会C程序结构及程序设计方法 模仿:纸上独立编写上机程序,掌握常用语句和函数的语法及功能上机实践上机实践 积累调试(语法、逻辑等排错)经验 理解常用语句和函数的语法及功能上机报告上机报告 基本练习:N-S流程图独立编程比对修改程序调试总结 综合练习:N-S流程图独立编写程序调试总结 自由练习:教材其它习题等,多多益善。5ppt课件实验1实验目的 掌握VC+编写及调试C语言程序的流程;掌握C源程序的结构 掌握数
3、据类型、强制类型转换和运算符的优先级基本练习 上机指导17.1.2:(7);17.2.2:(1);17.3.2:(4)。教材习题1.6,3.4,3.6综合练习 1. 已知2012年9月1日为星期六,编写程序按Mon至Sun顺序打印9月日历。 2. 分析下列语句的显示结果并上机验证:int a=0 x35892461; char s=a; printf(“%dn”,s) ;float f=3.64; int b=f; printf(%dn,b); int j=3; printf(+j=%d, j=%d, j+=%d,t,+j,j,j+); printf(j=%dnn,j); int a=3; p
4、rintf(a=%d, (+a)*5=%d,t,a,(+a)*5); printf(a=%dn,a); 6ppt课件实验1 总结主要问题不按步骤创建project及C程序文件(未点选win32 console application,C+ source file;忘加文件扩展名.c)一个project中编写多个main程序(只能保留一个,其余注释)关键字拼写错误忘带教材、上机指导书;玩手机、游戏综合练习参考答案1. 已知2012年9月1日为星期六,编写程序按Mon至Sun顺序打印9月日历。 /手动编排显示格式 /用转义字符(t,n,)控制显示格式2. 分析下列语句的显示结果并上机验证:int
5、a=0 x35892461; char s=a; printf(“%dn”,s) ; /97float f=3.64; int b=f; printf(%dn,b); /3int j=3; printf(+j=%d, j=%d, j+=%d,t,+j,j,j+); printf(j=%dnn,j); / +j=4, j=3, j+=3, j=5int a=3; printf(a=%d, (+a)*5=%d,t,a,(+a)*5); printf(a=%dn,a); / a=4, (+a)*5=20, a=47ppt课件实验2实验目的 掌握结构化程序设计步骤;掌握顺序及分支结构程序设计;掌握if
6、、else、switch、case、break、default关键字。基本练习 上机指导17.4.2: (3) 、(4)。教材习题4.8,4.11综合练习 1. 已知个税税率如上表,试分别用if和switch语句编程,从键盘输入某人的月工资金额,计算并显示该人应交税款及税后收入(纳税采用分段计算,如月工资为50000,则应纳税金额为:(1500*3%+3000*10%+4500*20%+26000*25%+15000*30%)。 2. 试编写程序,从键盘输入5位同学的成绩,再按从小到大的顺序排序并输出。级数级数收入收入s税率税率t(%)1不超过不超过1500元的部分元的部分32超过超过1500
7、元至元至4500元的部分元的部分103超过超过4500元至元至9000元的部分元的部分204超过超过9000元至元至35000元的部分元的部分255超过超过35000元至元至55000元的部分元的部分306超过超过55000元至元至80000元的部分元的部分357超过超过80000元的部分元的部分458ppt课件实验2 总结主要问题 基本操作:不按步骤创建project及C程序文件(点选win32 console application,C+ source file;文件扩展名.c) 上机预备:不重视准备工作,上机前没在作业本上先练习编程 程序结构变量定义分散 ,未集中在程序前面计算顺序混乱,
8、不按逻辑顺序 语法规则scanf读数的格式应与变量定义时一致:数据类型一致,间隔符号一致(scanf读入double用 %lf,读入float用%f,printf输出double和float都用 “%f)混淆常量与变量(switch的case只能用常量或常量表达式)混淆逻辑表达式与数学表达式:1500i1500 & =4500混淆o与0(return 0)混淆 % 与 /100 书写风格:自由随意,不按锯齿结构9ppt课件实验2 总结综合练习参考答案1. 已知个税税率如上表,试分别用if和switch语句编程,从键盘输入某人的月工资金额,计算并显示该人应交税款及税后收入(纳税采用分段计算,如月
9、工资为50000,则应纳税金额为:(1500*3%+3000*10%+4500*20%+26000*25%+15000*30%)。错在哪?错在哪?10ppt课件实验2 总结综合练习参考答案2. 试编写程序,从键盘输入5位同学的成绩,再按从小到大的顺序排序并输出。11ppt课件实验3 (9:30前提交上机报告)实验目的 掌握循环结构程序设计;掌握while、do-while、for、break、continue、goto语句基本练习 上机指导17.5.2:(2) 、(3)。 教材习题5.8,5.12 综合练习 1. 试编程从键盘输入一个5位十进制正整数,将其各位数字逆序组成新的整数,计算并显示新
10、数的7进制数。 2. 已知2012年9月1日为星期六,试用循环语句编程,按Mon至Sun的顺序打印9月的日历。12ppt课件实验3 总结主要问题 上机预备:不重视准备工作,上机前没在作业本上先练习编程 语法规则混淆逻辑表达式与数学表达式:if(j%7=0) -( j%7=0)变量未赋初值就开始运算; int a, b, c=345; b+=c%10; int a, b=0, c=345; b+=c%10; 程序结构循环体逻辑混乱;循环条件的设置不合理;13ppt课件实验3 总结综合练习参考答案1. 试编程从键盘输入一个5位十进制正整数,将其各位数字逆序组成新的整数,计算并显示新数的7进制数。1
11、4ppt课件实验3 总结综合练习参考答案2. 已知2012年9月1日为星期六,试用循环语句编程,按Mon至Sun的顺序打印9月的日历。15ppt课件实验4实验目的 掌握数组的定义和使用基本练习 上机指导17.6.2: (1)、(4)。 教材习题 6.2,6.8综合练习 1. 已知2013年1月1日为星期二,试编写程序,按Mon至Sun的顺序打印2013年的日历。(每月的天数用数组存放,每月日历打印可参考实验3的程序) 2. 试编写程序,从键盘输入5位同学的姓名及数学成绩,用选择法、冒泡法分别对数学成绩、姓名按从小到大的顺序排序并打印成绩表。(姓名及成绩分别用数组存放)16ppt课件实验5实验目
12、的 掌握函数的定义和使用方法基本练习 上机指导17.7.2: (1)、(3)。 教材习题7.3,7.14综合练习 1. 试编写程序,从键盘输入某年及其第一天的星期数,按Mon至Sun的顺序打印该年的日历。要求编写2个子函数,一个根据年份判断其是否为闰年,以确定2月的天数;另一个根据某月第一天的星期数打印该月的日历。 2. 试编写程序,从键盘输入10位同学的学号、姓名及数学成绩,再分别对学号、姓名、数学成绩按从小到大的顺序排序打印成绩表。(学号、姓名及成绩分别用数组存放, 编写排序子函数)17ppt课件实验5 总结主要问题 上机预备 不重视准备工作,上机前没在作业本上先练习编程 语法规则 混淆逻
13、辑表达式与数学表达式:if(j%7=0) -( j%7=0) 程序结构 循环体逻辑混乱 实参和形参名字混用 引用函数不按定义格式 易忘记数组第一个元素下标是0 忘记自定义函数的返回值18ppt课件实验5 总结下面错在哪? 正确-19ppt课件实验5 总结综合练习参考答案1. 试编写程序,从键盘输入某年及其第一天的星期数,按Mon至Sun的顺序打印该年的日历。要求编写2个子函数,一个根据年份判断其是否为闰年,以确定2月的天数;另一个根据某月第一天的星期数打印该月的日历。 关键问题每月第一天前的空格数每行的换行计算下月第一天是星期几20ppt课件实验5 总结综合练习参考答案2. 试编写程序,从键盘
14、输入10位同学的学号、姓名及数学成绩,再分别对学号、姓名、数学成绩按从小到大的顺序排序打印成绩表。(学号、姓名及成绩分别用数组存放, 编写排序子函数)。 不少同学没来得及做,答案暂缓给出,请大家继续完成不少同学没来得及做,答案暂缓给出,请大家继续完成21ppt课件实验6实验目的 掌握函数的定义和使用方法基本练习 上机指导17.8.2: (1)、(4) 。教材习题7.11,7.1综合练习 试编写程序,对10个学生的信息(包括:姓名-字符串10位,学号-整型01-99,英语成绩-浮点数0-100,数学成绩浮点数0-100,物理成绩浮点数0-100 ),计算综合成绩(各科成绩乘以该科学分(分别为4、
15、6、3),求和,再除以总学分)并排序: 1 ).子函数1-数据排序,参数为变量 2). 子函数2-数据排序,参数为数组22ppt课件实验7实验目的 理解预处理命令、指针、结构体及文件的使用基本练习 上机指导17.9.2: (2);17.10.2: (1);17.11.2: (2); 17.12.2: (1)。教材习题8.9, 8.5, 9.6, 10.5综合练习 试编写程序,对5个学生的信息(包括:姓名-字符串10位,学号-整型01-99,3门课程成绩-浮点数0-100 ),计算综合成绩(各科成绩乘以该科学分(分别为4、6、3),求和,再除以总学分)并排序: 1). 学生信息读入: 子函数1-
16、读入教材习题10.5所写文件的数据 2). 综合成绩排序: 子函数2-数据排序,函数形参为指针 3). 按姓名查询成绩: 子函数3-函数形参为结构体指针23ppt课件上机预备2012091010002 XXX实验实验2.综合练习综合练习1:xxxxxxxxxxxxxxxN-S流程图流程图源程序源程序24ppt课件上机报告的写法C语言上机报告语言上机报告2012091010002 XXX实验实验2.综合练习综合练习1:xxxxxxxxxxxxxxx源程序源程序调试过程及结果调试过程及结果调试过程:源程序调试过程中的记录,包括出错及调试过程:源程序调试过程中的记录,包括出错及改正记录、修改完善记录
17、、获得经验、感想等;若改正记录、修改完善记录、获得经验、感想等;若程序未能通过,分析其原因,并附上未通过程序的程序未能通过,分析其原因,并附上未通过程序的源代码源代码(结果:截屏,包括输入与输出)(结果:截屏,包括输入与输出)25ppt课件26ppt课件提高练习:分支及循环结构1. 编写程序。某服装袋内经营套服,也单件出售。若买的不少于编写程序。某服装袋内经营套服,也单件出售。若买的不少于50套套,每,每套套80元;不足元;不足50套的每套套的每套90元;只买上衣每件元;只买上衣每件60元;只买裤子每条元;只买裤子每条45元。设计一程序,读入所买上衣和裤子的件数,计算应付款额。元。设计一程序,
18、读入所买上衣和裤子的件数,计算应付款额。2. 编写程序。假设银行整存整取存款不同期限的月息利率分别为:编写程序。假设银行整存整取存款不同期限的月息利率分别为:0.63% 期限期限=1年年;0.66% 期限期限=2年年;0.69% 期限期限=3年年; 0.75% 期限期限=5年年;0.84% 期限期限=8年年。 利息利息=本金本金*月息利率月息利率*12*存款年限存款年限。现某人手中现某人手中有有2000元,请通过计算选择一种存钱方案,使得前存入银行元,请通过计算选择一种存钱方案,使得前存入银行20年后得年后得到的利息最多(假定银行队超过存款期限的那部分不付利息)。到的利息最多(假定银行队超过存
19、款期限的那部分不付利息)。3. 编写程序编写程序(分别采用分别采用4种种循环结构实现循环结构实现) 。在歌星大奖赛中,有在歌星大奖赛中,有10个评委个评委为参赛的选手打分,分数为为参赛的选手打分,分数为1到到100分。选手最后得分为:分。选手最后得分为:去去掉一个最掉一个最高分和一个最低分高分和一个最低分后后其余其余8个分数的平均成绩。个分数的平均成绩。27ppt课件提高练习:函数及数组已知变量定义和函数调用语句已知变量定义和函数调用语句 int a,b; b=sum(a);函数函数sum()用来求用来求1n共共n个自然数的和并返回其值。例如,个自然数的和并返回其值。例如,a=10,sum(a
20、)返回值是返回值是55。请编。请编写写sum函数。函数。编写程序用牛顿法求解方程编写程序用牛顿法求解方程f(x)=cosx-x=0。已知初值。已知初值x0=3.1415/4,要求,要求绝对误差不超过绝对误差不超过0.001,函数,函数f用来计算迭代公式中用来计算迭代公式中xn的值。牛顿迭代公式的值。牛顿迭代公式是:是:xn+1=xn-f(xn)/f(xn), 即即xn+1=xn-(cosxn-xn)/(sinxn-1)。请编写。请编写f函数函数在歌星大奖赛中,有在歌星大奖赛中,有10个评委为参赛的选手打分,分数为个评委为参赛的选手打分,分数为1到到100分。选分。选手最后得分为手最后得分为去去
21、掉一个最高分和一个最低分掉一个最高分和一个最低分后后其余其余8个分数的平均成绩。个分数的平均成绩。请编写程序实现请编写程序实现,要求分别写出求数组最大值、最小值要求分别写出求数组最大值、最小值及求及求和的函数,函和的函数,函数的参数为数组。数的参数为数组。编写程序:编写程序:通过循环按行顺序为一个通过循环按行顺序为一个5* *5的二维数组的二维数组a赋值赋值1到到25的自然数的自然数,然后输出该数组的左下半三角。,然后输出该数组的左下半三角。 再任意再任意输入两个矩阵,计算它们的乘输入两个矩阵,计算它们的乘积。积。编写程序:移动的手机可以拨打编写程序:移动的手机可以拨打10086修改密码。移动
22、规定:密码为修改密码。移动规定:密码为6位位数字,密码输入以数字,密码输入以#号结束;并规定密码不能为本手机号或机主身份证号号结束;并规定密码不能为本手机号或机主身份证号中连续数字。请设计一程序验证密码的合法性。不合法可以重输中连续数字。请设计一程序验证密码的合法性。不合法可以重输入入。(如。(如果没理解上面的要求,请拨打果没理解上面的要求,请拨打10086试试)试试)28ppt课件提高练习:函数及指针9. 在歌星大奖赛中,有在歌星大奖赛中,有10个评委为参赛的选手打分,分数为个评委为参赛的选手打分,分数为1到到100分。选手最后得分为分。选手最后得分为去去掉一个最高分和一个最低分掉一个最高分
23、和一个最低分后后其余其余8个分数的平均成绩。请编写一个程序实现,采用指针个分数的平均成绩。请编写一个程序实现,采用指针访问数组。要求分别写出求数组最大值、最小值访问数组。要求分别写出求数组最大值、最小值及求及求和的函数和的函数,函数的参数为指针函数的参数为指针。10. 完善下列程序,完善下列程序,编写函数编写函数findmax,计算一个数组的最大值,并返回最大元素及其下标,计算一个数组的最大值,并返回最大元素及其下标值和地址值。值和地址值。 #include *findmax(int *s,int t,int *k) main() int a10=12,23,34,45,56,67,78,89
24、,11,22,k,*add; add=findmax(a,10,&k); printf(“%d,%d,%on”,ak,k,add); 11. 编写程序:编写程序:将字符串中第将字符串中第m个字符开始的全部字符复制成另一个字符串。要求在主函数个字符开始的全部字符复制成另一个字符串。要求在主函数中输入字符串及中输入字符串及m的值并输出复制结果,在被调用函数中完成复制,并的值并输出复制结果,在被调用函数中完成复制,并使用使用malloc分配分配新数组的内存。新数组的内存。29ppt课件提高练习:结构体及文件11. 编写程序:编写程序:已知一结构体包括人员姓名已知一结构体包括人员姓名(六位字母六位字母)及电话号码及电话号码(11位数字位数字)。编。编写程序为其输入数据,以字符写程序为其输入数据,以字符”#”结束。然后输入姓名,查找其电话号码。结束。然后输入姓名,查找其电话号码。 12. 编写程序:上题每次运行都重新输入数据,很麻烦。试将输入的数据保存到文编写程序:上题每次运行都重新输入数据,很麻烦。试将输入的数据保存到文件,然后从文件读入数据初始化结构体,再实现查找。要求程序能在命令行输件,然后从文件读入数据初始化结构体,再实现查找。要求程序能在命令行输入文件名。入文件名。30ppt课件