C语言课程设计项目

article/2025/10/8 5:37:30

C语言课程设计项目

团队介绍
单位名怀化学院计算机科学与工程学院
班级小组序号1901班第八组
团队名称潜力无限组
课程设计题目学生限时答题评测系统

一、课程设计题目基本要求介绍

(1) 输入信息:学生输入自己的学号+姓名作为学生基本信息,然后可以开始答题,支持输入的字符可以包括空格。
 加分项0:如果没有按学号+姓名的方式可以提示重新输入。
 加分项1:一旦输入正式的学号和姓名之后,窗口标题应该修改为该生输入的“学号+姓名”。
(2) 限时答题:正确的学号+姓名之后限制120秒开始答题
 加分项2:答题开始时,倒数5秒,每秒倒数1次,倒数不计时。
(3) 开始答题:从至少100道题的题库中每次随机抽取一道题目,开启问答模式,回答后提示回答正确与否,如果回答错误就提示正确答案。可以限制一共只能答题多少道。(思考:题目数量越来越多,如何方便添加新的题干和答案,如何便于自己管理原有的题干和答案。)
 加分项3:支持大小写答题功能,如学生输入fF,等同于ff。
 加分项4:支持开头是空格或者回车的错误输入,不会因为误输入而判错,如输入 \nff(空白表示空格,\n表示回车),等同于输入ff。
 加分项5:支持学生输入的答案中可以有空格,如学生输入f f,等同于输入ff。
 加分项6:题库中的题目分为难易两档,随机抽题时,可以设定抽取难题的比例,比如63%的几率会抽到难题,那么37%的几率会抽取容易的题目。
 加分项7:每完成一道题目,提示该同学已正确多少道,已耗时多少秒。
 加分项8:每道题回答正确还是错误,应该易于辨识,比如正确的提示为绿色,错误的提示为红色。
 加分项9:超时后不再允许学生输入,但不关闭程序。
(4) 答题分析:打印出学生回答的成绩单,并且根据学生回答的正确数、回答的总题数、正确率、耗时等因素制定出一个百分制的评分标准,根据评分不同可以设定为不同等级,如“S”、“A”、“B”、“C”级等,或者“青铜”、“白银”、“黄金”等,并且显示的成绩单要美观。
 加分项10:根据学生表现的不同等级,显示不同颜色的成绩单,还可以根据学生不同的等级,输出不同的提示话语。
(5) 答题日志:记录所有屏幕上打印出的语句,将所有语句按输出的程序全部记录在【学生基本信息_EXAM.txt】之中。(提示:需要用到第10章的功能,通过看书、网上查阅自己了解查看示例)
 加分项11:文件记录的语句越完整越好。
(6) 网络版程序:以上功能属于单机版内容,大概看懂参考程序server.c和client.c程序,了解大概意思,能阅读已有的可运行程序将自己已完成的单机版程序改为客户端和服务端的网络版程序。
 加分项12:考生答题时(客户端)将某些重要的连接信息发送给服务端,服务端可以生成特定的文件来记录下这些客户端发来的连接信息。
 加分项13:考生答完后(客户端)将某些重要的考生完成信息发送给服务端,服务端可以生成特定的文件来记录下这些客户端发来的考生完成信息。
 加分项14:如果考生达到某个级别以上,考生会将【学生基本信息_EXAM.txt】自动发送给服务器端,在服务器端中保存下来。
(7) 其他:代码规范,多使用符号常量来配置程序中可能使用的各种参数。
(8) 【加分项15】版本发布:学会最终发布Release版,不再使用默认的Debug版本。
(9) 【加分项16】发布一种新的练习模式,练习模式可以自己设定限制的时间,属于单机版,用于个人练习,但功能基本类似。

二、流程图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、项目目前的进程

1、 输入信息:学生输入自己的学号+姓名作为学生基本信息,然后可以开始答题,支持输入的字符可以包括空格。
 加分项0:如果没有按学号+姓名的方式可以提示重新输入。
 加分项1:一旦输入正式的学号和姓名之后,窗口标题应该修改为该生输入的“学号+姓名”。
2、 限时答题:正确的学号+姓名之后限制120秒开始答题
 加分项2:答题开始时,倒数5秒,每秒倒数1次,倒数不计时
3、 开始答题:从至少100道题的题库中每次随机抽取一道题目,开启问答模式,回答后提示回答正确与否,如果回答错误就提示正确答案。可以限制一共只能答题多少道。(思考:题目数量越来越多,如何方便添加新的题干和答案,如何便于自己管理原有的题干和答案。)
 加分项3:支持大小写答题功能,如学生输入fF,等同于ff。
 加分项4:支持开头是空格或者回车的错误输入,不会因为误输入而判错,如输入 \nff(空白表示空格,\n表示回车),等同于输入ff。
 加分项5:支持学生输入的答案中可以有空格,如学生输入f f,等同于输入ff。
 加分项7:每完成一道题目,提示该同学已正确多少道,已耗时多少秒。
 加分项8:每道题回答正确还是错误,应该易于辨识,比如正确的提示为绿色,错误的提示为红色。
 加分项9:超时后不再允许学生输入,但不关闭程序。
4、答题分析:根据学生回答的正确数、回答的总题数、正确率、耗时等因素制定出一个百分制的评分标准,根据评分不同可以设定为不同等级,如“S”、“A”、“B”、“C”级等,或者“青铜”、“白银”、“黄金”等。
5、将自己已完成的单机版程序改为客户端和服务端的网络版程序。
6、其他:代码规范,多使用符号常量来配置程序中可能使用的各种参数。
7、【加分项15】版本发布:学会最终发布Release版,不再使用默认的Debug版本。
8、【加分项16】发布一种新的练习模式,练习模式可以自己设定限制的时间,属于单机版,用于个人练习,但功能基本类似。
9、核心功能讲解
(1)、支持开头是空格或者回车的错误输入
(2)、scanf支持回车,可在scanf上稍加改进
(3)、
void scanfs(char str[100])
{
int index=0,move=-1;
gets(str);
while(str[index]!=’\0’){

    if(str[index]!=' ' && move!=-1){str[move] = str[index];move++;}else if(str[index]==' ' && move==-1){move = index;}index++;
}
if(move!=-1){str[move]='\0'  ;
}  

}
(4)、在这里插入图片描述

四、项目未完成的功能

1、正在实现:根据学生表现的不同等级,显示不同颜色的成绩单,还可以根据学生不同的等级,输出不同的提示话语。
2、打算实现:记录所有屏幕上打印出的语句,将所有语句按输出的程序全部记录在【学生基本信息_EXAM.txt】之中。

五、每日项目进度及版本更新日志说明

在这里插入图片描述
在这里插入图片描述

六、每位成员的过程体会

组长:叶佳亮:团队合作很重要,遇到难题上百度
组员:伍琳海:在经过这次的c语言作业,我发现c语言程序的设计需要结实的基础。还要拥有足够的精力。当然还要有必不可少的基本程序。在这次的作业过程中我更加意识到团队和作的重要性,只有一个配合默契的团队才能将每个人的优势发挥到最大,当然一个优秀团队也要有一个优秀的领导者。就像羊群中的领头羊一样带领着羊群找到最好的草地。
组员:刘永康:首先非常感谢组长他们,虽然很艰辛,付出了很多时间精力,自己做出来的却很少,但是我在这个过程中充分享受到了其中乐趣,也让我认识到了自己各方面的不足,我希望在以后的路上能够更加努力。

七、组长想说的话

自我批评:首先,本次任务我们组尚未完成,主要是由于我未能尽职尽责管理好每位组员,让部分组员摸鱼,拖慢了整组的进程;其次,对做好的功能未能进行优化,对不懂得内容未能及时通过查找资料学会,这也是一大失误。
自夸篇:身为计算机菜鸟的我,在本次课程设计中通过询问同学,查找资料完成了以前完全不敢想能做出来的函数,也算是有了几分安慰。


http://chatgpt.dhexx.cn/article/vkWh91DH.shtml

相关文章

C语言源码做的通讯录管理系统课程设计(源码+课程设计报告)

一、课程设计的目的: C语言课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C语言程序设计的知识点,又接近工程实际需要。本次设计的目的是通过课程设计的综合训练&#xf…

C语言源码做的班级档案管理系统课程设计(源码+课程设计报告)

一、课程设计的目的: C语言课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C语言程序设计的知识点,又接近工程实际需要。本次设计的目的是通过课程设计的综合训练&#xf…

【C++程序设计】课程设计报告

作者:何翔 学院:计算机学院 学号:04191315 班级:软件1903 完整资料:https://download.csdn.net/download/HXBest/75523613 项目资料下载:https://download.csdn.net/download/HXBest/21947475

C语言——课程设计

一、实验目的 了解开发环境掌握结构体变量的定义和使用;掌握结构体数组的定义和使用;掌握文件输入,输出基本方法掌握函数用法 二、实验内容 【项目1】完成以下功能的设计。 此学生成绩管理可以实现对学生成绩及基本信息进行创建、添加、删…

学生成绩管理系统-C语言(附源码和课程设计报告)

学生成绩管理系统-C语言&#xff08;附源码和课程设计报告&#xff09; 这是我初学C语言时的课程设计作业&#xff0c;源码贴出来希望对有需要的小伙伴有所帮助 系统功能层次图 头文件源代码 #include<stdio.h> #include<stdlib.h> #define FILENAME"stude…

通讯录管理系统 C语言课程设计实验报告

通讯录管理系统C语言课程设计 一、实验目的 1.巩固和加深学生对C语言课程的基本知识的理解和掌握 2.掌握C语言编程和程序调试的基本技能 3.利用C语言进行基本的软件设计 4.掌握书写程序设计说明文档的能力 5.提高运用C语言解决实际问题的能力 二.程序要求 学生信息包括&#x…

C语言学生成绩管理系统(课程设计报告书)

今天再跟大家分享一份课程设计报告&#xff1a;C语言学生成绩管理系统源码 程序设计组成框图&#xff1a; #include<stdio.h> #include<conio.h> #include<malloc.h> #include<string.h>typedef struct STUDENT { char studentNumber[10];/*学生学号*/…

记录C语言课程设计报告-图书管理系统

倾心原创&#xff0c;转载请备注原文地址&#xff0c;谢谢。 主要内容&#xff1a; 图书信息包括&#xff1a;书名、作者名、ISBN号、出版单位、出版年份、价格等。试设计一个图书信息管理系统&#xff0c;使之能提供以下功能&#xff1a; &#xff08;1&#xff09;系统以菜…

C语言课程设计

《C语言课程设计》任务书 课程设计名称&#xff1a;C语言课程设计&#xff08;C Language Designing &#xff09; 课程设计学分&#xff1a;1学分 课程设计时间&#xff1a;第一学年第1学期 课程设计学时&#xff08;周数&#xff09;&#xff1a;28学时&#xff08;1周&…

C语言课程设计报告-菜单设计

源代码&#xff1a;https://blog.csdn.net/queen00000/article/details/94468911 xxx大学 C语言课程设计报告 题 目 菜单设计 专业班级 组 别 学生姓名…

连续邮资问题

1、实验环境 Visual C 6.0 2、实验目的和要求 利用回溯法解决连续邮资问题。假设某国家发行了n种不同面值的邮票并且规定每张信封上最多只允许贴m张。对于给定的n和m的值&#xff0c;给出邮票面值的最佳设计&#xff0c;使得可在1张信封上贴出从邮资1开始&#xff0c;增量为…

寄信收信问题

问题 在一个村庄里有i个人&#xff0c;他们每个人只能寄出一封信&#xff0c;接收一封信&#xff0c;并且不能给自己寄信。那么请问一共有多少种寄信收信方式。 思路 遇到此类问题&#xff0c;应该从简单的情况考虑。比如&#xff0c;当村里只有两个人的时候&#xff0c;只有…

【图论】中国邮递员问题、平面图上最大割问题的多项式时间算法

文章目录 一、中国邮递员问题1. 与欧拉回路的关系2. Edmonds-Johnson算法3. 一个例子 二、平面图上的最大割问题1. 割2. 最大割及其 N P \bold{NP} NP完全性3. 平面图上的最大割问题4. 奇回路覆盖5. 转化为一般图最大匹配6. 一个例子 三、顶点图上最大割问题的 N P \bold{NP} N…

AMPL实现中国邮递员问题,你get到了吗

本文所有代码全部使用AMPL语言实现 中国邮递员问题和旅行商问题不太相同&#xff0c;旅行商问题是不能回头的&#xff0c;而邮递员问题要求是访问所有街道&#xff0c;也就是说每个街道必须访问到。 1、哥尼斯堡七桥问题 要解出中国邮递员问题&#xff0c;首先我们一起来了解…

关于中国邮递员问题和欧拉图应用

关于中国邮递员问题和欧拉图应用 中国邮递员问题&#xff1a; 1962年有管梅谷先生提出中国邮递员问题&#xff08;简称CPP&#xff09;。一个邮递员从邮局出发&#xff0c;要走完他所管辖的每一条街道&#xff0c;可重复走一条街道&#xff0c;然后返回邮局。任何选择一条尽可…

欧拉环游和中国邮递员问题

文章目录 前言欧拉环游Fleury算法中国邮递员问题 前言 这篇文章介绍了欧拉环游的定义判定&#xff0c;Fleury算法求欧拉图中的欧拉环游&#xff0c;最后给出了中国邮递员问题的解决步骤。 欧拉环游 所谓欧拉环游就是指在一个无向图中&#xff0c;从一个点出发&#xff0c;每…

中国邮递员问题最短路径(代码+实现)

奇点需要配合LINGO进行去除&#xff0c;有需要请联系1822285076qq.com&#xff0c;需要一定费用。 总程序&#xff1a; 奇点消除lingo代码&#xff1a;

一笔画问题(中国邮递员问题)

一笔画与中国邮递员问题 一、引述 一笔画问题&#xff1a; 节点可以重复走边不可以重复走要求把所有边都走一次 欧拉图(Euler graph)&#xff1a; 从任何节点开始&#xff0c;都可以一笔画 每一个节点都是偶数价&#xff08;价数指的是从该节点能够伸出去的边的数目&#x…

用遗传算法解决中国邮递员问题

中国邮递员问题 所谓中国邮递员问题&#xff0c;见下面无向图 &#xff0c;假设邮递员初始位置在A点&#xff0c;现在他要访问所有其他4个结点以便投递邮件&#xff0c;结点与结点之间的距离已经标注在边上。问&#xff1a;邮递员应该依次访问哪些结点才能以最短路径遍历所有结…

中国邮路问题邮递员问题欧拉路径图论C++

下载链接&#xff1a;https://download.csdn.net/download/RONNIE_Zz/13094843 通路&#xff1a;在无向图中由点边交替组成的序列就是通路&#xff08;如果这个图是简单的&#xff0c;那么也可以使用点的序列来表示&#xff09;&#xff0c;如果首尾的点相同&#xff0c;则称为…