C语言程序设计.doc_第1页
C语言程序设计.doc_第2页
C语言程序设计.doc_第3页
C语言程序设计.doc_第4页
C语言程序设计.doc_第5页
已阅读5页,还剩7页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计实 训 指 导 书编写人:吴瑞芝 内蒙古化工职业学院计算机与信息工程系2003年5 月 8 日编 写 说 明1、本实训指导书根据计算机类专业教学计划和C语言程序设计实训教学大纲编写。2、本实训指导书作为教师在教学过程中指导学生实习实训时使用。3、本指导书的特点:依据C语言实训的性质和特点,本指导书共分为6个实训模块,实训课时为30学时4、本实训指导书的执行对象是计算机类所有专业(三年学制)学生。目 录一、实训目的.3二、实训条件.3三、实训要求及注意事项.3四、实训内容及时间安排.4五、实训步骤.4六、考核方式.5七、参考文献.5一、实训目的通过集中上机练习,使学生对重要知识点有一个更深和更全面的理解,进一步熟悉TC的集成编辑环境,熟练掌握程序的编写、调试、运行过程。熟悉C语言的基本语法,建立结构化程序设计的编程思想,锻炼逻辑思维能力,提高实际操作能力,培养团队合作精神,为设计实际的工程项目打基础。二、实训条件 1场地条件:人手一台电脑 2设备条件:TurboC 2.0或 Turbo C+3.0 或Visual C+5.0等常用的C语言开发环境。三、实训要求及注意事项1 要求每一个学生都能熟练地编辑、调试程序,熟悉开发环境编译运行程序的操作步骤。2 深入思考,从问题出发,画出流程图,体会模块化结构化的编程思想,灵活运用各种控制语句解决实际问题。3 综合设计项目发扬团队合作精神,本着为他人负责的态度完成本组模块的设计和调试。4 每个学生实训完成后,完成实训报告的撰写,总结实训中的经验和不足。四、实训内容和时间安排本次实训时间为1个星期(5天)。内容和时间安排如下:课程内容学时1、顺序结构程序设计22、分支结构程序设计。43、循环结构程序设计。44、一维、二维数组的应用45、有关函数的程序设计46、有关指针的程序设计 47有关结构体、共用体和枚举类型的程序设计28文件的建立与读写29 综合设计4合计30五、实训项目实训一、顺序结构程序设计要求:熟练运用C语言编辑环境,掌握程序的编写、编译、运行、调试的整个过程。能利用基本输入输出函数和基本语句进行顺序结构程序设计。内容:1将“China”译成密码,密码规律是:用原来字母后面的第4个字母代替原来的字母。例如:字母“A”后面第四个字母是E,用E代替A。因此“China”应译为”Glmre”。请编写一个程序,用赋初值的方法使c1,c2,c3,c4,c5五个变量的值分别为C,h,i,n,a 。经过运算,分别变为G,l,m,r,e输出。2.输入一个球的半径,求出球的表面积、体积。用scanf输入数据。输入输出时要有适当的文字说明,取小数点后两位数字。提示:球体的表面积=4r2,球体的体积=4/3*r3实训二、分支结构程序设计。要求:利用分支语句设计程序,掌握程序的设计思路。内容:1有3个整数a、b、c,由键盘输入,输出其中最大的数。2给出一百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,8089为B, 7079分为C,6069分为D,60分以下为E。3输入4个整数,要求按由小到大的顺序输出。4给一个不多于5位的正整数,要求:a.求出它是几位数;b.分别打出每一位数字;c.按逆序打出各位数字,例如原数为321,应输出123。实训三、循环结构程序设计。要求:利用循环语句设计程序,掌握程序的设计思路,提高实际应用能力。内容:1求Sn=a+aa+aaa+aaa 之值,其中a是一个数字。例如:2+22+222+2222+22222(此时n=5), n由键盘输入。2求和1!+2!+3!+4!+20!3 打印100-999之间所有的“水仙花数”。“水仙花数”是一个三位数,其各位数立方和等于该数本身。4有一数列:2/1,3/2,5/3,8/5,求出这个数列的前20项之和。5 用迭代法求x= a 。求平方根的迭公式为xn+1=1/2(xn+a/xn)要求前后两次求出的x的差的绝对值小于10-56用牛顿迭代求方程2x3-4x2+3x-6=0在1.5附近的根。7.打印下列图案*实训四、一维、二维数组的应用。要求:掌握一维数组、二维数组的定义,在程序中对数组元素的赋值和访问方法,利用数组进行程序设计。内容:1 已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。2 将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。3 有15个数按由小到大顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则打印出“无此数”。4 编一程序,将两个字符串连接起来,不要用strcat函数。5. 求一个33矩阵对角线元素之和。6. 打印出以下的杨辉三角形(要求打印出10行)。11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1 7. 有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。实训五、函数的程序设计。要求:掌握函数的定义、调用、返回,掌握程序中函数之间的关系。内容:1上机调试下面的程序,记录系统给出的出错信息,并指出出错原因。main()int x,y;printf(%dn,sum(x+y);int sum(a,b);int a,b;return(a+b);2定义一个函数,功能是计算n个学生的成绩中,高于平均成绩的人数,并作为函数值。用主函数来调用它,统计50个学生成绩中,高于平均成绩的有多少人?3编写一个对n个数据从大到小的排序C函数,再编写一个计算最后得分的C函数,计算方法是:去除一个最高分,去除一个最低分,其余的平均分为参赛选手的最后得分。并在主函数中调用它们对有n个评委评分,m个选手参赛的最后得分,从大到小排序输出。4编写一个计算n!的函数,用主函数调用它,使之输出7阶杨辉三角形:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 11 7 21 35 35 21 7 1杨辉三角形是二项展开式(a+b)n的系数,共有n+1项,n=0,1,。杨辉三角形在数学上具有重要的意义,在高中阶段已学过,系数是按照公式:am= ,其中am是展开式中的第m项系数。5编写一个程序,包括主函数和如下子函数。(1) 输入10个无序的整数;(2) 用起泡方法从大到小排序;(3) 要求输入一个整数,用折半查找法找出该数,若存在,在主函数中输出其所处的位置,否则,插入适当位置。分析:input函数完成10个整数的录入。sort函数完成起泡法排序,search函数完成输入数的查找。实训六、指针的程序设计 要求:利用指针访问变量、数组、字符串以及函数等对象,进行相关程序设计,解决实际问题。内容:1. 将n个整数按逆序排列。用函数实现,在主函数中用scanf输入n个数,并调用函数完成逆序排列后,再用printf将其输出。2. 编写一函数实现将一个3*3的矩阵转置。3. 用一个函数实现两个字符串的比较,即自己写一个strcmp函数:strcmp(s1,s2) 如果s1=s2,则函数返回值为0;如果s1s2,返回它们二者第一个不同自符的ASCII码差值;如果S1S2,则输出正值;如s1s2,则输出负值。实训七、结构体、共用体和枚举类型的程序设计要求:利用自定义类型存储数据,实现一般算法中对数据的组织处理,进行相关的程序设计。 内容:1. 有5个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入5个学生数据,要求打印出三门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、三门课的成绩、平均分数)。2. 输入年、月、日,计算该日期是当年第几天。3. 用下列结构描述复数信息:Struct complex int real; Int im;试写出两个通用函数,分别用来求两个复数的和与积,其函数原型分别为:struct complex cadd(struct complex creal,struct complex cim);struct complex cmult(struct complex creal, struct complex cim);实训八、文件的建立与读写 要求:设计程序实现对文件的打开、关闭、读、写等操作。内容:1. 有 5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件“stud”中。2. 将上题“stud”文件中的学生数据,按平均分进行排序处理,将已排序的学生数据存入一个新文件“stu_sort”中。3.设有一文件cj.dat存放了50个人的成绩(英语、计算机、数学),存放格式为:每人一行,成绩间由逗号分隔。计算三门课平均成绩,统计个人平均成绩大于或等于90分的学生人数。实训九、综合设计要求:1、设计流程:需求分析-功能模块分析-文件结构分析-分组编写代码汇总链接提交2、模块设计要求:(1)要求用多文件方式实现设计。(2)要求在各文件内实现结构化设计。(3)每个模块作为一个单独的C文件。(4)宏和数据结构等均放在头文件中。内容:学生成绩管理系统提示:(1)功能模块1、新建学生信息2、存储学生信息文件3、读取学生信息文件4、学生记录增加5、学生记录显示6、学生记录删除7、学生记录修改8、学生记录查询9、学生记录排序10、头文件(2)文件组成表整个系统的设计分为6个相关的文件,分别由5个小组完成,最后汇总其它各组的程序文件,链接完成整个工程。源文件包含函数实现功能Student.cmain主菜单,总控函数menu_select选择菜单menu_handle处理菜单newrecord新建学生信息Quit结束程序运行Add_disp.cGetmc计算学生名次Addrrecord增加学生记录Displayrecord显示学生信息Qrm.cRemoverecord删除学生信息Findrecord查找学生记录Queryrecord查找学生信息Copyrecord复制学生信息Modifyrecord修改学生信息Save_load.cSaverecord保存文件Loadrecord读取文件Sort.hSortrecord记录排序Student.h常数提供常数结构及类型定义定义结构及类型库函数及函数原型声明引用库函数及自定义函数声明六、考核方式(1) 考查的依据:实训中的表现,出勤情况,对实训相关知识的掌握程度,实际操作技术的熟练程度,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论