
c语言课程设计题目(各位大哥,帮帮忙啊,网上没有啊)
要求如下:模拟实现英语四级考分最基本的处理和成绩发布功能,并以此为基础评定考生参加六级考试的考试资格。主要功能如下:1.四级成绩录入功能:每个考生信息包括准考证号(不重复...
要求如下:
模拟实现英语四级考分最基本的处理和成绩发布功能,并以此为基础评定考生参加六级考试的考试资格。主要功能如下:
1.四级成绩录入功能:每个考生信息包括准考证号(不重复)、考场号、姓名、四级考试成绩等。考虑以合理数据结构,诸如:结构数组或数据文件的形式存放考生信息。
2.成绩发布:以考场号为单位,提供该考场所有考试成绩浏览功能。
3.检索:查某考生考试成绩、查指定分数段考生人数。
4.六级参考资格:以考场为单位,统计出该考场获得六级英语考试资格的考生,按指定百分比(如30%)测定。
5.成绩测评:为指定考场生成试卷分析表:统计各分数段人数、及格率、平均成绩、最高成绩和最低成绩,以表格形式显示出来。
6.系统以菜单方式工作,界面应清晰直观,便于用户操作。 展开
模拟实现英语四级考分最基本的处理和成绩发布功能,并以此为基础评定考生参加六级考试的考试资格。主要功能如下:
1.四级成绩录入功能:每个考生信息包括准考证号(不重复)、考场号、姓名、四级考试成绩等。考虑以合理数据结构,诸如:结构数组或数据文件的形式存放考生信息。
2.成绩发布:以考场号为单位,提供该考场所有考试成绩浏览功能。
3.检索:查某考生考试成绩、查指定分数段考生人数。
4.六级参考资格:以考场为单位,统计出该考场获得六级英语考试资格的考生,按指定百分比(如30%)测定。
5.成绩测评:为指定考场生成试卷分析表:统计各分数段人数、及格率、平均成绩、最高成绩和最低成绩,以表格形式显示出来。
6.系统以菜单方式工作,界面应清晰直观,便于用户操作。 展开
3个回答
展开全部
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define MAXN 35
#define MAX_NAME 256
typedef struct student
{
int no;
char name[MAX_NAME];
double kaochang;
double mark;
} STUDENT;
/*-----------输入信息子程序---------*/
void input(STUDENT *data, int *len)
{
int no;
putchar('\n');
printf("%s\n", "请输入新的记录,如果需要退出当前菜单请输入-1.");
printf("%s\n", "格式:\n准考证号\n");
printf("%s\n", "姓名 考场号 四级成绩");
putchar('\n');
printf("如:\n");
printf("091202114\n");
printf("李达最 101 426 \n");
scanf("%d", &no);
while(no != -1) {
data[*len].no = no;
scanf("%s %lf %lf ", data[*len].name, &data[*len].kaochang, &data[*len].mark);
(*len)++;
scanf("%d", &no);
}
}
/*---------------输出信息子程序---------------*/
void output(STUDENT *data, int len)
{
int i;
system("cls");
printf("%8s", "准考证号");
printf("%8s", "姓名");
printf("%8s", "考场号");
printf("%8s", "四级成绩");
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
for (i = 0; i< len; i++)
{
printf("%8d", data[i].no);
printf("%8s", data[i].name);
printf("%8.1lf", data[i].kaochang);
printf("%8.1lf", data[i].mark);
putchar('\n');
}
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("按回车键继续.");
getchar();
getchar();
}
/*--------------排序子程序------------*/
/*--------------------搜索子程序-----------------------*/
void find(STUDENT *data, int len)
{
int find_no, result ;
int i;
lab: result=0;
printf("%s\n", "请输入需要查找的学生的准考证号,退出当前菜单请输入 -1.");
scanf("%d", &find_no);
if (find_no == -1) return; /*exit the fine sub program*/
while( data[result].no != find_no && result < len) result ++;
if (result >= len ) {
printf("%s\n", "未查询到相关信息");
goto lab;
}
else {
system("cls");
printf("%s\n", "查询信息如下:");
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("%8s", "准考证号");
printf("%8s", "考场号");
printf("%8s", "姓名");
printf("%8s", "四级");
putchar('\n');
printf("%8d", data[result].no);
printf("%8s", data[result].name);
printf("%8.1lf", data[result].kaochang);
printf("%8.1lf", data[result].mark);
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
goto lab;
}
}
/*-----------------插入子程序-------------*/
/*-------------删除子程序--------------*/
void delete_item(STUDENT *data, int *len)
{
int no, i, pos;
lab: pos=0;
printf("%s\n", "输入需要删除的学生的学号,退出当前菜单请输入-1.");
scanf("%d", &no);
if (no == -1) return;
while( (data[pos].no != no) && (pos < *len) ) pos = pos +1;
if (pos >= *len) {
printf("%s\n", "未找到需要删除的学生");
goto lab;
}
else {
for (i = pos+1;i < *len; i++)
data[i-1] = data[i];
*len = *len -1;
if (*len == 0) {
printf("%s\n", "没有任何记录,请按回车键返回.");
getchar();
getchar();
return;
}
goto lab;
}
}
/*---------------统计子程序------------*/
/*---------------显示信息子程序------------*/
void paint()
{
int i;
system("cls");
printf("%55s\n", "扬州大学信息工程学院\n");
printf(" 制作者:扬州大学计科0901 李春威 \n");
for (i = 0; i < 80; i++)
putchar('=');
putchar('\n');
printf(" 1 输入信息 2 输出信息\n");
printf(" 3 按成绩排序 4 按学号查找\n");
printf(" 5 按成绩查找 6 成绩评测\n");
printf(" 6 六级参考资格 8 保存到文件\n");
printf(" 0 退出\n");
for (i = 0; i<= 79; i++)
putchar('=');
putchar('\n');
printf("%s\n", "请输入各操作对应的序号:");
}
void save(STUDENT *data, int len)
{
int i;
FILE *fp;
fp=fopen("成绩统计表.txt","w");
fprintf(fp,"%8s", "准考证号");
fprintf(fp,"%8s", "姓名");
fprintf(fp,"%8s", "考场号");
fprintf(fp,"%8s", "四级成绩");
fprintf(fp,"========================================================================\n");
putchar('\n');
for (i = 0; i< len; i++)
{
fprintf(fp,"%8d", data[i].no);
fprintf(fp,"%8s", data[i].name);
fprintf(fp,"%8.1lf", data[i].kaochang);
fprintf(fp,"%8.1lf\n", data[i].mark);
}
fprintf(fp,"========================================================================\n");
fclose(fp);
printf("文件已保存到\"成绩统计表.txt\"");
getchar();getchar();
}
/*-----------主程序--------------*/
void main()
{
STUDENT data[MAXN];
int len = 0;
char ctrl_ch;
system("graftabl 936");
paint();
scanf("%c", &ctrl_ch);
while (ctrl_ch != '0') {
switch(ctrl_ch) {
case '1':
input(data, &len);
break;
case '2':
output(data, len);
break;
case '3':
break;
case '4':
find(data, len);
break;
case '5':
break;
case '6':
delete_item(data, &len);
break;
case '7':
stat(data, len);
break;
case '8':
save(data, len);
break;
default:
if (ctrl_ch != '\n') printf("%s\n", "输入错误!");
break;
}
if (ctrl_ch != '\n') paint();
scanf("%c", &ctrl_ch);
}
}
#include <stdio.h>
#include <string.h>
#define MAXN 35
#define MAX_NAME 256
typedef struct student
{
int no;
char name[MAX_NAME];
double kaochang;
double mark;
} STUDENT;
/*-----------输入信息子程序---------*/
void input(STUDENT *data, int *len)
{
int no;
putchar('\n');
printf("%s\n", "请输入新的记录,如果需要退出当前菜单请输入-1.");
printf("%s\n", "格式:\n准考证号\n");
printf("%s\n", "姓名 考场号 四级成绩");
putchar('\n');
printf("如:\n");
printf("091202114\n");
printf("李达最 101 426 \n");
scanf("%d", &no);
while(no != -1) {
data[*len].no = no;
scanf("%s %lf %lf ", data[*len].name, &data[*len].kaochang, &data[*len].mark);
(*len)++;
scanf("%d", &no);
}
}
/*---------------输出信息子程序---------------*/
void output(STUDENT *data, int len)
{
int i;
system("cls");
printf("%8s", "准考证号");
printf("%8s", "姓名");
printf("%8s", "考场号");
printf("%8s", "四级成绩");
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
for (i = 0; i< len; i++)
{
printf("%8d", data[i].no);
printf("%8s", data[i].name);
printf("%8.1lf", data[i].kaochang);
printf("%8.1lf", data[i].mark);
putchar('\n');
}
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("按回车键继续.");
getchar();
getchar();
}
/*--------------排序子程序------------*/
/*--------------------搜索子程序-----------------------*/
void find(STUDENT *data, int len)
{
int find_no, result ;
int i;
lab: result=0;
printf("%s\n", "请输入需要查找的学生的准考证号,退出当前菜单请输入 -1.");
scanf("%d", &find_no);
if (find_no == -1) return; /*exit the fine sub program*/
while( data[result].no != find_no && result < len) result ++;
if (result >= len ) {
printf("%s\n", "未查询到相关信息");
goto lab;
}
else {
system("cls");
printf("%s\n", "查询信息如下:");
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
printf("%8s", "准考证号");
printf("%8s", "考场号");
printf("%8s", "姓名");
printf("%8s", "四级");
putchar('\n');
printf("%8d", data[result].no);
printf("%8s", data[result].name);
printf("%8.1lf", data[result].kaochang);
printf("%8.1lf", data[result].mark);
putchar('\n');
for (i =0; i < 80; i++)
putchar('=');
putchar('\n');
goto lab;
}
}
/*-----------------插入子程序-------------*/
/*-------------删除子程序--------------*/
void delete_item(STUDENT *data, int *len)
{
int no, i, pos;
lab: pos=0;
printf("%s\n", "输入需要删除的学生的学号,退出当前菜单请输入-1.");
scanf("%d", &no);
if (no == -1) return;
while( (data[pos].no != no) && (pos < *len) ) pos = pos +1;
if (pos >= *len) {
printf("%s\n", "未找到需要删除的学生");
goto lab;
}
else {
for (i = pos+1;i < *len; i++)
data[i-1] = data[i];
*len = *len -1;
if (*len == 0) {
printf("%s\n", "没有任何记录,请按回车键返回.");
getchar();
getchar();
return;
}
goto lab;
}
}
/*---------------统计子程序------------*/
/*---------------显示信息子程序------------*/
void paint()
{
int i;
system("cls");
printf("%55s\n", "扬州大学信息工程学院\n");
printf(" 制作者:扬州大学计科0901 李春威 \n");
for (i = 0; i < 80; i++)
putchar('=');
putchar('\n');
printf(" 1 输入信息 2 输出信息\n");
printf(" 3 按成绩排序 4 按学号查找\n");
printf(" 5 按成绩查找 6 成绩评测\n");
printf(" 6 六级参考资格 8 保存到文件\n");
printf(" 0 退出\n");
for (i = 0; i<= 79; i++)
putchar('=');
putchar('\n');
printf("%s\n", "请输入各操作对应的序号:");
}
void save(STUDENT *data, int len)
{
int i;
FILE *fp;
fp=fopen("成绩统计表.txt","w");
fprintf(fp,"%8s", "准考证号");
fprintf(fp,"%8s", "姓名");
fprintf(fp,"%8s", "考场号");
fprintf(fp,"%8s", "四级成绩");
fprintf(fp,"========================================================================\n");
putchar('\n');
for (i = 0; i< len; i++)
{
fprintf(fp,"%8d", data[i].no);
fprintf(fp,"%8s", data[i].name);
fprintf(fp,"%8.1lf", data[i].kaochang);
fprintf(fp,"%8.1lf\n", data[i].mark);
}
fprintf(fp,"========================================================================\n");
fclose(fp);
printf("文件已保存到\"成绩统计表.txt\"");
getchar();getchar();
}
/*-----------主程序--------------*/
void main()
{
STUDENT data[MAXN];
int len = 0;
char ctrl_ch;
system("graftabl 936");
paint();
scanf("%c", &ctrl_ch);
while (ctrl_ch != '0') {
switch(ctrl_ch) {
case '1':
input(data, &len);
break;
case '2':
output(data, len);
break;
case '3':
break;
case '4':
find(data, len);
break;
case '5':
break;
case '6':
delete_item(data, &len);
break;
case '7':
stat(data, len);
break;
case '8':
save(data, len);
break;
default:
if (ctrl_ch != '\n') printf("%s\n", "输入错误!");
break;
}
if (ctrl_ch != '\n') paint();
scanf("%c", &ctrl_ch);
}
}

2023-06-12 广告
单片机课程设计是针对《单片机原理及应用技术》课程的一项重要的动手实践活动。该课程设计的目标是让学生通过实际项目的开发,掌握单片机的开发技能,提高解决实际问题的能力,并且加深对单片机原理及应用技术的理解。课程设计的内容包括项目概述、项目要求、...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询