tft每日頭條

 > 生活

 > 高級語言程序課程的發展曆程

高級語言程序課程的發展曆程

生活 更新时间:2024-06-30 13:56:43

(計算機學院)

高級語言課程設計報告

題 目: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("tt********NBA球星管理管理系統********nn-%s-nn",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("序号:%dt ",plays[i].id);

printf("分類:%st ",plays[i].name);

printf("等級:%st ",plays[i].dengji);

printf("球隊:%st ",plays[i].qiudui);

printf("在役:%dt",plays[i].store);

printf("退役:%dnn",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("序号:%dt ",plays[i].id);

printf("分類:%st ",plays[i].name);

printf("等級:%st ",plays[i].dengji);

printf("球隊:%st ",plays[i].qiudui);

printf("在役:%dt",plays[i].store);

printf("退役:%dn",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("此類球員已經借出nn");

getch();

}

else

;

return_confirm();

}

main()

{

system("color 3f");

char user[10] = "admin";

char key[10] = "123";

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("用數字選擇操作nn");

printf("tt1注冊新球員tt2顯示球員信息n");

printf("tt3查詢球員信息tt4修改球員信息n");

printf("tt5删除球員tt6借出球員n");

printf("tt0退出系統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組正常測試數據和運行結果

高級語言程序課程的發展曆程(高級語言課程設計報告)1

高級語言程序課程的發展曆程(高級語言課程設計報告)2

高級語言程序課程的發展曆程(高級語言課程設計報告)3

高級語言程序課程的發展曆程(高級語言課程設計報告)4

2.異常測試數據及運行結果

提供重要功能對應的2組異常測試數據和運行結果

高級語言程序課程的發展曆程(高級語言課程設計報告)5

高級語言程序課程的發展曆程(高級語言課程設計報告)6

六.調試情況,設計技巧及體會1.改進方案

缺少排序等方法,内容過于簡單,沒有對知識進行總的應用。

2.體會

對設計及調試過程的心得體會

簡單的小系統的編寫無法獨立自主地完成,需要借助網絡和他人的幫助,對知識掌握的不熟練,第一次編寫這麼長的代碼,從開始都認為無法完成,不過在幫助下,還是盡最大努力完成了,盡管看起來隻有一點點,内容簡單,但能成功運行就是成功。

七.參考文獻,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved