ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:405.83KB ,
资源ID:706799      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/706799.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计实践报告.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计实践报告.docx

1、C语言课程设计实践报告北京理工大学珠海学院C语言程序设计实践报告20142015学年第1学期 学 院: 计算机学院 专业班级:计算机科学与技术(1)班 学 号: 学生姓名: 骆庆东 指导老师: 代俊雅 成 绩: 时 间: 2014年12月26日一、实践目的与内容实践目的C 语言程序设计实践02180044是面向计算机学院各专业开设的专业基础课,主要目的在于培养学生的分析问题能力,以及如何利用计算机解决问题的能力。通过将课本上的理论知识和应用案例进行结合,提高学生程序设计、程序调试及解决问题能力。为后续课程:面向对象程序设计、数据结构、软件工程等专业教育课程奠定基础。 本课程分为理论和实践两部分

2、:理论课程重点学习结构体和指针的定义和引用等,及其作为函数参数和返回的用法;实践部分通过布置具有一定难度、一定编程量的应用案例,使学生通过编程练习深入理解C 语言的程序设计思想,掌握C 语言程序设计方法和编程技术,培养学生的利用计算机求解实际问题的能力,强化学生的计算思维和计算机思维。实践内容实践练习1:循环结构编程(猜数游戏)1. 编程先由计算机“想”一个1100 之间的数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10 次,如果猜了10 次仍未猜中的话,结束游戏。 2. 编

3、程先由计算机“想”一个1100 之间的数请人猜,如果人猜对了,在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,则结束游戏;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10 次,如果猜了10 次仍未猜中的话,则停止本次猜数,然后继续猜下一个数。每次运行程序可以反复猜多个数,直到操作者想停止时才结束。实践练习2:数组与结构体编程(成绩统计)1.学生成绩统计(一维数组)从键盘输入一个班(全班最多不超过30人)学生某门课的成绩,当输入成绩为负值时,输入结束,分别实现下列功能:(1)统计不及格人数并打印不及格学生名单;(2)统计成绩在全班平均分及平均分之上的学生人数,并

4、打印这些学生的名单;(3)以直方图方式统计各分数段的学生人数及所占的百分比。形式如下:分段 人数 图形=90 4() *2. 成绩排名次(结构体数组)某班期末考试科目为数学(MT)、英语(EN)和物理(PH),有最多不超过30 人参加考试,学号可以用输入的序号代替。考试后要求:(1)计算每个学生的总分和平均分;(2)按总分成绩由高到低排出成绩的名次;(3)打印出名次表,表格内包括学生编号、各科分数、总分和平均分;(4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数。实践练习3:函数编程(函数调用与参数传递)将实践练习2 中的第2题利用函数的思想进行修改,并将学生的成绩等信息输出到

5、文件中。要求函数参数中包含结构体数组或指针。输出到ASCII 文件的信息包括每个学生的学号、三门成绩和名次,每人一行。实践练习4:数组/结构体/函数/文件编程(成绩统计与分析)学生信息统计和查询每位学生信息包括:学号、姓名、性别、学院、10 门成绩。共有不超过100 位同学的信息存放在ASCII 文件 中;不超过10 个学院的信息存放在 中,性别代码存放在 中,均为代码和其对应的名称。要求: 1. 定义至少包含以上学生信息和学院代码的结构体类型和指针(或数组)变量。 2. 函数实现从文件中输入信息到定义的数据中。 3. 函数实现排序(1):学生平均成绩的降序排序,并输出所有信息到显示屏。 4.

6、 函数实现排序(2):学生姓名的升序排序,并输出所有信息到显示器。 5. 函数实现查询(1):根据学号查询学生信息,并输出该生信息,并输出所有信息到显示器。 6. 函数实现查询(2):根据姓名查询学生信息,并输出该姓名的学生信息,并输出所有信息到显示器。 7. 函数实现查询(3):根据学院代号列出该学院的所有学生信息,并输出到显示器。 8. 函数实现统计:根据学生平均成绩统计各分数段的人数级所占的百分比,并以直方图方式输出,形式如下:分段人数图形=90 4() * 进入程序后,无条件执行从指定文件名中读入数据;数据读入后,以菜单的形式选择后续的执行: 1. 平均成绩降序排序 2. 姓名升序排序

7、 3. 学号查询 4. 姓名查询 5. 学院学生列表 6. 平均成绩统计 7. 退出 其中的查询模块中,须为循环结构,用户可以选择继续查询,当输入的为0时,结束当前查询,返回主菜单。提高模块*: 1. 函数执行需有密码(密码在文件中不得以明文出现); 2. 密码修改模块二、任务内容分析实践练习1先编写第1 个程序,然后试着在第1 个程序的基础上编写第2 个程序,程序1 编程先由计算机“想”一个1100 之间的数请人猜,如果人猜对了,则计算机给出提示“Right!”,否则提示“Wrong!”,并告诉人所猜的数是大还是小,然后结束游戏。要求每次运行程序时机器所“想”的数不能都一样。程序2 编程先由

8、计算机“想”一个1100 之间的数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平;否则计算机给出提示,告诉人所猜的数是太大还是太小,直到人猜对为止。程序3 编程先由计算机“想”一个1100 之间的数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10 次,如果猜了10 次仍未猜中的话,结束游戏。程序4 编程先由计算机“想”一个1100 之间的数请人猜,如果人猜对了,在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平

9、,则结束游戏;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10 次,如果猜了10 次仍未猜中的话,则停止本次猜数,然后继续猜下一个数。每次运行程序可以反复猜多个数,直到操作者想停止时才结束。实践练习2(1)使用一维数组来存放学号,再用一维数组来记录输入成绩的学生变量,计算总分、平均分,调用函数比较学生成绩,得出排名,再根据数组定义对应存放各变量的位置,最后得到名次表和直方图。(2)使用结构体数组来实现,该结构体中包括学生学号和成绩,用二维数组存放每个学生各门课程的成绩,用一维数组存放每个学生的学号,用一维数组存放每个学生的总分,用一维数组存放每个学生的平均分。实践练习3用函数编

10、程实现计算每个学生的总分。用函数编程实现按总分由高到低对学生成绩排序。实践练习4题目要求完成一个学生信息统计和查询系统,要求能进行对学生的信息统计和查询,同时可以对学生的信息进行排序。系统的使用,有用户的存在,即需要用户登录才能使用。 本课程实验环境由任课教师自行决定:VC+、Visual Studio 2010 或以上版本(建议采用Visual Studio 2012)。编程语言为C。系统有以下几个功能性要求:1. 学生的信息查询:输入学号/用户名,查询对应学生的信息。2. 学生的信息排序:对学生的信息按指定的要求进行排序。3. 学生的信息统计:对学生的成绩按平均分进行统计。4. 用户验证:

11、用户使用该系统,首先进行验证,验证成功,才能登入系统。三、程序设计实践练习1主要代码实现: while(1) srand(time(NULL); k=rand()%100+1; for(Num=1;Numi) printf(Too smalln); else printf(Too largen); if(k=i) break; printf(是否继续游戏? n); scanf(%d,&x); if(x=2)break; 实践练习2主要代码实现: for(i=0;iN-1;i+) for(j=i+1;jN;j+) if(stui.sumstuj.sum) t=stui; stui=stuj; s

12、tuj=t; printf(按总成绩高低排序n); printf(名次t学号t姓名t数学t英语t物理t总成绩t平均分n); for(i=0;iN;i+) printf(%dt%dt%st%.1ft%.1ft%.1ft%.1ft%.1fn,i+1,stui.number,stui.name,stui.MT,stui.EN,stui.PH,stui.sum,stui.ave); printf(请输入要查询学生的学号:); scanf(%d,&k); for(i=0;i30); for(i=0;iN;i+) printf(请输入第%d个学生的学号:,i+1); scanf(%d,&stui.number); printf(请输入学生的姓名:); scanf(%s,stui.name); printf(请输入数学的成绩:); scanf(%f,&stui.MT); printf(请输入英语的成绩:); scanf(%f,&stui.EN); printf(请输入物理的成绩:); s

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1