没有合适的资源?快使用搜索试试~ 我知道了~
程序设计实习报告 选题名称: 学生成绩管理系统 系 (院): 计算机与信息工程学院 专业班级: 姓 名: 学 号: 设计时间: 20 年 月 一、需求分析 给出n个学生的m门考试的成绩表,每个学生的信息由学号、姓名、性别以及各科成绩 组成。对学生的考试成绩进行有关统计:按总数高低次序,打印出名次表,分数相同的 为同一名次;按名次打印出每个学生的学号、姓名、总分以及各科成绩,并打印统计表 。 二、概要设计 程序要有的功能: 1. 输入记录 2. 用指定格式显示全部记录 3. 根据姓名查找记录 4. 根据姓名删除记录 5. 保存记录到文件 6. 按序号显示记录 7. 按姓名由小到大的顺序排序 程序运行当中,通过选择对应的功能序号来实现所需功能。对输入的数据要有事先的分 析,如果用户输入的数据与实际不相符如输入成绩的数值为负,则程序应输出相应的提 示:"您输入的数据有误,请核实!"。再者就是,当再输入完相应的数据后,程序作出 相应的提示,询问用户是否要保存数据。在排列学生成绩时候,如果出现成绩相同的情 况,程序自动作出处理。最后,在程序可以正确运行的基础上,再增加一些功能,如在 排列的时候,
资源推荐
资源详情
资源评论
C 语言程序设计实习报告
程序设计实习报告
选题名称: 学生成绩管理系统
系 (院): 计算机与信息工程学院
专业班级:
姓 名:
学 号:
设计时间: 20 年 月
C 语言程序设计实习报告
一、需求分析
给出 n 个学生的 m 门考试的成绩表,每个学生的信息由学号、姓
名、性别以及各科成绩组成。对学生的考试成绩进行有关统计:按总
数高低次序,打印出名次表,分数相同的为同一名次;按名次打印出
每个学生的学号、姓名、总分以及各科成绩,并打印统计表。
二、概要设计
程序要有的功能:
1. 输入记录
2. 用指定格式显示全部记录
3. 根据姓名查找记录
4. 根据姓名删除记录
5. 保存记录到文件
6. 按序号显示记录
7. 按姓名由小到大的顺序排序
程序运行当中,通过选择对应的功能序号来实现所需功能。对输入的
数据要有事先的分析,如果用户输入的数据与实际不相符如输入成绩
的数值为负,则程序应输出相应的提示:“您输入的数据有误,请核
实!”。再者就是,当再输入完相应的数据后,程序作出相应的提示,
询问用户是否要保存数据。在排列学生成绩时候,如果出现成绩相同
的情况,程序自动作出处理。最后,在程序可以正确运行的基础上,
再增加一些功能,如在排列的时候,自动输出最高分与最低分。与及
格成绩作比较,输出及格人数等相关信息。
C 语言程序设计实习报告
流程图:
开始
结束
选择操作
输入数据
排序
显示数据
查询
删除
输出界面
插入数据
退出系统
按学号
按姓名
保存数据
吧
按景平均成绩
选 择
7
选 择
6
选 择
5
选 择
4
选 择
3
选 择
2
选 择
1
选 择
8
按平均成绩高
低 i
读取数据
吧
选 择
8
三门成绩
学号
姓名
C 语言程序设计实习报告
三、详细设计
源程序:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
int shoudsave=0; /* */
struct student
{
char num[10];/* 学号 */
char name[20];
char sex[4];
int cgrade;
int mgrade;
int egrade;
int totle;
int ave;
char neartime[10];/* 最近更新时间 */
};
typedef struct node
{
struct student data;
struct node *next;
}Node,*Link;
void menu()
{
printf("********************************* 主 菜 单
*****************************************");
printf("\t1 登记学生资料\t\t\t\t\t2 删除学生资料\n");
printf("\t3 查询学生资料\t\t\t\t\t4 修改学生资料\n");
printf("\t5 保存学生资料\t\t\t\t\t0 退出系统\n");
printf("*************************************************************************
*******\n");
}
void printstart()
{
printf("-----------------------------------------------------------------------\n");
}
void Wrong()
{
C 语言程序设计实习报告
printf("\n=====>提示:输入错误!\n");
}
void Nofind()
{
printf("\n=====>提示:没有找到该学生!\n");
}
void printc() /* 本函数用于输出中文 */
{
printf(" 学号\t 姓名 性别 英语成绩 数学成绩 C 语言成绩 总分 平均分\n");
}
void printe(Node *p)/* 本函数用于输出英文 */
{
printf("%-12s%s\t%s\t%d\t%d\t%d\t %d\t
%d\n",p->data.num,p->data.name,p->data.sex,p->data.egrade,p->data.mgrade,p->data.cgrade,p->
data.totle,p->data.ave);
}
Node* Locate(Link l,char findmess[],char nameornum[]) /* 该函数用于定位连表中符合要求的
接点,并返回该指针 */
{
Node *r;
if(strcmp(nameornum,"num")==0) /* 按学号查询 */
{
r=l->next;
while(r!=NULL)
{
if(strcmp(r->data.num,findmess)==0)
return r;
r=r->next;
}
}
else if(strcmp(nameornum,"name")==0) /* 按姓名查询 */
{
r=l->next;
while(r!=NULL)
{
if(strcmp(r->data.name,findmess)==0)
return r;
r=r->next;
}
}
剩余27页未读,继续阅读
资源评论
小虾仁芜湖
- 粉丝: 84
- 资源: 9357
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功