前言:
现在朋友们对“c语言课程设计信息管理系统”可能比较关心,朋友们都需要学习一些“c语言课程设计信息管理系统”的相关文章。那么小编在网摘上网罗了一些有关“c语言课程设计信息管理系统””的相关文章,希望兄弟们能喜欢,看官们快快来学习一下吧!(计算机学院)
高级语言课程设计报告
题 目:NBA球星管理系统
专业名称:电子信息科学与技术
设计起止时间:2020年2月27日——2020年3月6日一. 设计目的
c对语言的一个综合使用,对数据库统计信息的初步认识
二. 设计内容
NBA球星管理系统是对里面球员的一些基本信息的统计及了解
三.概要设计
利用c语言的结构体为中心,先构造一个主菜单并分几个模块,构建他们的函数
在对各个模块进行信息的填充,以此完成整个系统。
1.功能模块图
a.注册新球员,b.显示球员信息,
c.查询球员信息,d..修改球员信息,
e.删除球员,f.借入借出球员。
2.各个模块详细的功能描述四.详细设计1.功能函数的调用关系图2.各功能函数的数据流程图3.重点设计及编码
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
//定义结构体
struct play
{
int id;
char name[31];
char dengji[27];
char qiudui[31];
int store;
int total;
int user[10];
int days[10];
}plays[100];
//显示整体标题标题函数
void page_title(char *menu_item)
{
printf("\t\t********NBA球星管理管理系统********\n\n-%s-\n\n",menu_item);
}
//等待返回函数
void return_confirm()
{
printf("\n请按任意键返回……\n");
getch();
}
play_add()
{
int i;
system("cls");
page_title("注册新球员");
for(i=0;i<2;i++)
{
printf("序号:");
scanf("%d",&plays[i].id);
printf("分类(明星球员,普通球员):");
scanf("%s",&plays[i].name);
printf("等级:");
scanf("%s",&plays[i].dengji);
printf("球队:");
scanf("%s",&plays[i].qiudui);
printf("数量:");
scanf("%d",&plays[i].total);
plays[i].store=plays[i].total;
printf("\n");
}
}
play_show()
{
int i,flag=0;
system("cls");
for(i=0;i<100;i++)
{
if(strlen(plays[i].qiudui)!=0)
{
printf("序号:%d\t ",plays[i].id);
printf("分类:%s\t ",plays[i].name);
printf("等级:%s\t ",plays[i].dengji);
printf("球队:%s\t ",plays[i].qiudui);
printf("在役:%d\t",plays[i].store);
printf("退役:%d\n\n",plays[i].total);
flag=1;
}
}
if(flag==0)
{
printf("没有找到相关球员\n");
}
getch();
return i;
}
int play_search()
{
int n,i,flag=0;
char nam[30];
system("cls");
printf("请输入分类:");
scanf("%s",&nam);
for(i=0;i<100;i++)
{
if(strcmp(plays[i].name,nam)==0)
{
printf("序号:%d\t ",plays[i].id);
printf("分类:%s\t ",plays[i].name);
printf("等级:%s\t ",plays[i].dengji);
printf("球队:%s\t ",plays[i].qiudui);
printf("在役:%d\t",plays[i].store);
printf("退役:%d\n",plays[i].total);
n=i;
flag=1;
getch();
break;
}
}
if(flag==0)
{
printf("\n没有找到相关球员\n");
getch();
return -1;
}
return n;
}
play_edit()
{
int i,id_change;
system("cls");
page_title("修改球员信息:");
printf("输入要修改的球员id:");
scanf("%d",&id_change);
for(i=0;i<100;i++)
{
if(plays[i].id==id_change)
{
printf("修改分类:");
scanf("%s",&plays[i].name);
printf("修改等级:");
scanf("%s",&plays[i].dengji);
printf("修改球队:");
scanf("%s",&plays[i].qiudui);
printf("修改数量:");
scanf("%d",&plays[i].total);
printf("修改球员信息成功\n");
plays[i].store=plays[i].total;
return i;
}
}
printf("\n没有找到相关信息\n");
getch();
return -1;
}
int play_del()
{
int i,num,j;
system("cls");
page_title("删除球员");
printf("输入所要删除的球员的id:");
scanf("%d",&num);
for(i=0;i<100;i++)
{
if(plays[i].id==num)
{
for(j=i;j<100;j++)
{
plays[j].id=plays[j+1].id;
strcpy(plays[j].name,plays[j+1].name);
strcpy(plays[j].qiudui,plays[j+1].qiudui);
printf("该球员已经删除了!!!\n");
getch();
return i;
}
}
}
printf("未找到相关记录\n");
getch();
return -1;
}
play_out()
{
int n,s,i,d;
system("cls");
page_title("借出球员");
n=play_search();
if(n!=-1&&plays[n].store>0)
{
for(i=0;i<10;i++)
{
plays[n].user[i]=0;
plays[n].days[i]=0;
}
printf("借球员序号:");
scanf("%d",&s);
printf("输入可借天数:");
scanf("%d",&d);
plays[n].user[0]=s;
plays[n].days[0]=d;
plays[n].store--;
}
else if(n!=-1&&plays[n].store==0)
{
printf("此类球员已经借出\n\n");
getch();
}
else
;
return_confirm();
}
main()
{
system("color 3f");
char user[10] = "admin\0";
char key[10] = "123\0";
char user2[100], key2[100];
printf("请输入用户名:\n");
scanf("%s", &user2);
printf("请输入密码:\n");
scanf("%s", &key2);
if (strcmp(user, user2) != 0 || strcmp(key, key2) != 0)
{
//非法输入!
printf("非法输入!用户名或密码错误!\n");
return 0;
system("pause");
}
else
{
do{
system("cls");
printf("操作选单\n");
printf("用数字选择操作\n\n");
printf("\t\t1注册新球员\t\t2显示球员信息\n");
printf("\t\t3查询球员信息\t\t4修改球员信息\n");
printf("\t\t5删除球员\t\t6借出球员\n");
printf("\t\t0退出系统\n");
printf("请按数字键:\n");
switch(getchar())
{
case'1': play_add();break;
case'2': play_show();break;
case'3': play_search();break;
case'4': play_edit();break;
case'5': play_del();break;
case'6': play_out();break;
case'0': exit(0);
}
}while(1);
}
}
五.测试数据及运行结果1.正常测试数据和运行结果
提供重要功能对应的3组正常测试数据和运行结果
2.异常测试数据及运行结果
提供重要功能对应的2组异常测试数据和运行结果
六.调试情况,设计技巧及体会1.改进方案
缺少排序等方法,内容过于简单,没有对知识进行总的应用。
2.体会
对设计及调试过程的心得体会
简单的小系统的编写无法独立自主地完成,需要借助网络和他人的帮助,对知识掌握的不熟练,第一次编写这么长的代码,从开始都认为无法完成,不过在帮助下,还是尽最大努力完成了,尽管看起来只有一点点,内容简单,但能成功运行就是成功。
七.参考文献
标签: #c语言课程设计信息管理系统