日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2个

發布時間:2025/3/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2个 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學生信息包括:學號,姓名,年齡,性別,出生年月,學號,成績,排名等。試設計一學生信息管理系統,使之能提供以下功能:

1系統以菜單方式工作。

2學生信息錄入功能——輸入。

3學生信息瀏覽功能——輸出。

4學生信息查詢功能——算法。

按學號查詢;

按姓名查詢。

5??學生信息的刪除與修改

設計一個能實現學生信息管理系統,讓它來運行和管理學生信息。它在現實生活中運用方便的、管理方便。它能輸入學生學號、年齡、性別、出生年月、成績、排名。系統以菜單的方式進行工作,進入子菜單后,還可以返回主菜單。在子菜單中的各種操作都有中文說明,操作簡單、易懂。只要我們正確的操作系統,系統就無異常現在,當然系統也能對一些基本的錯誤做出提示,并能讓使用者重新進行操作。

對各個操作的成功,如:添加學生信息、修改學生信息、刪除學生信息,系統都輸出“…….的成功”的字樣。系統對刪除和修改前,還進行“確定”和“取消”。系統對不存在的學號和姓名系統能判斷是否存在。對已存在的學號,操作者不能添加和這個學號一樣的學生信息,同時系統還提示已有此學號。對于修改、刪除和查詢,系統遇到不存在的學生能提示沒有這個信息。

按照函數功能,將不同的代碼放到一起,用大括號括起來,然后給這段代碼起個名字表示,然后還要設置上參數,一遍使用這個函數的時候向里傳遞實際的值,類似一個加法的函數,完成兩個數的相加,我們可以寫成

myadd(int a, int b)

{

?? int c;

?? c=a+b;

?? return c;

}

myadd就是我們給這個函數起的名字,以便使用,ab的作用接收調用者傳遞過來的數,然后把接收的兩個數相加后返回,這個函數的值在調用后就是返回的值c,所以如果我們想算99+23等于多少,只要調用我們寫好的函數

myadd(99,23),這個時候函數的值就是99+23了,如果把結果保存在變量d中,可以寫成

d=myadd(99,23);

有了函數,我們就可以把不同功能的代碼組織到一起,不僅自己方便,而且程序特別簡單明了,便于修改,其他人寫的函數我們還可以直接拿來用。

所以我們的這個學生信息管理系統形式就非常簡單了,一共用到了三個函數

int main()

{?

? int i,sum;

? pagedis();

? check();

以下是完整的學生管理系統的總程序:

?

#include"stdio.h"

#include"stdlib.h"

#include"string.h"

#include"conio.h"

#define PAGE 3

#define MAX 1000

#define N 5

int k=0;

? /*結構體類型*/

typedef struct?

{??int num;/*學號*/

??? char name[20];/*姓名*/

???????? charsex[5];/*性別*/

???????? intage;/*年齡*/

???????? charstudentclass[20];/*班級*/

???????? intscore;/*成績*/

}STUDENTS;

?

int read_file(STUDENTS stu[])

{?????? FILE*fp;

???int i=0;

???????? if((fp=fopen("stu.txt","rt"))==NULL)

???????? {printf("\n\n*****庫存文件不存在!請創");

???????? ?return 0;

???????? }

???????? while(feof(fp)!=1)

??? {

???????? fread(&stu[i],sizeof(STUDENTS),1,fp);

???????? if(stu[i].num==0)

????????????????? break;

???????? else

????????????????? i++;

???????? }

???????? fclose(fp);

???????? returni;

}

void save_file(STUDENTS stu[],int sum)

{FILE*fp;

?inti;

?if((fp=fopen("stu.txt","wb"))==NULL)

?{printf("寫文件錯誤!\n");

?return;

?}

??for(i=0;i<sum;i++)

???????? ??if(fwrite(&stu[i],sizeof(STUDENTS),1,fp)!=1)

????????????????? ?? printf("寫文件錯誤!\n");

???????? ?? fclose(fp);

}

?

?

/*創建學生信息*/

int input(STUDENTS stu[])

{?int i,x;

??for(i=0;i<1000;i++)

?? {

???system("cls");?

???printf("\n\n?????????????????錄入學生信息? (最多%d)\n",MAX);

???printf("??????????????----------------------------\n");

??

???????printf("\n????????????????????%d個學生",k+1);

???????? ??? printf("\n?請輸入學生的學號:");

???????scanf("%d",&stu[k].num);

???????printf("\n?請輸入學生的姓名:");

???????scanf("%s",stu[k].name);

???????? ? ??? printf("\n請輸入學生的性別:");

???????scanf("%s",stu[k].sex);

???????printf("\n?請輸入學生的年齡:");??

???????scanf("%d",&stu[k].age);?

???????printf("\n?請輸入學生的班級:");

???????scanf("%s",stu[k].studentclass);???????

???????printf("\n?請輸入學生的成績:");

???????scanf("%d",&stu[k++].score);

???????printf("\n?請按1鍵返回菜單或按0鍵繼續創建");

????????????????? scanf("%d",&x);

????????????????? if(x)

????????????????? ? break;

?? }

?????

??????return k;

}

?

?

/*刪除學生信息*/

void deletel(STUDENTS stu[])

? {system("cls");

??char Stuname2[20];

??int i,j;

??printf("請輸入學生姓名:");

??scanf("%s",Stuname2);

??printf("\n");

??for(i=0;i<k;i++)

??if(strcmp(stu[i].name,Stuname2)==0)??

????for(j=0;j<20;j++)

??????stu[i].name[j]=stu[i+1].name[j];

??k--;

????????

?

??printf("刪除成功\n");

??printf("按任意鍵加回車返回主菜單!");

??scanf("%d",&i);

??getchar();

}

?

/*打印學生信息*/???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

void output(STUDENTS stu[])

{?system("cls");

??int i;

??for(i=0;i<k;i++)?

????printf("學號:%d,姓名:%s,性別:%s,年齡:%d,班級:%s,成績: %d\n",stu[i].num,stu[i].name,

????????????????? ?stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

??printf("按任意鍵加回車返回主菜單!");

??scanf("%d",&i);

??getchar();

}

?

/*查詢學生信息*/

void inquire(STUDENTS stu[])

? {int i;

???int num;

???system("cls");

???printf("???? \n\n請輸入您要查找的學生的學號");

???scanf("%d",&num);

???for(i=0;i<k;i++)

?????if(num==stu[i].num)

????????printf("\n\n\n學號:%d,姓名:%s,性別:%s,年齡:%d,班級:%s,成績: %d\n",stu[i].num,stu[i].name,

????????????????? ?stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

???printf("按任意鍵加回車返回主菜單!");

???????? scanf("%d",&i);

???getchar();

? }

?

?

/*修改學生信息*/

void change(STUDENTS stu[])

?{? int num,i,choice;

????system("cls");

???????? ?printf("\n\n\n??????請輸入您要修改的學生的學號");

????scanf("%d",&num);

????for(i=0;i<k;i++)

????{ if(num==stu[i].num)

????????printf("\n學號:%d,姓名:%s,性別:%s,年齡:%d,班級:%s,成績: %d\n",stu[i].num,stu[i].name,

????????????????? ?stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

?

? ???printf("\n\n\n???? ********請輸入您想要修改的數據********\n\n");

????printf("??????????????? 1.?學號\n\n");

????printf("??????????????? 2.?姓名\n\n");

???????? ?printf("??????????????? 3.?性別\n\n");

????printf("??????????????? 4.?年齡\n\n");

????printf("??????????????? 5.?班級\n\n");

????printf("??????????????? 6.?成績\n\n");

????printf("?????????????????請選擇(1-6:");

???????? ? scanf("%d",&choice);

???????? ? switch(choice)

???????? ? {case 1:{

????????????????? ?????? printf("\n???請輸入你改的新學號");

???????? ??????????scanf("%d",&stu[i].num);

????????????????????????? ?? break;

????????????????????????? ?? }

???????? ?? case 2:{

???????? ???????? ??????printf("\n???請輸入你改的新姓名");

???????? ?????????? scanf("%s",stu[i].name);

????????????????????????? ?? break;

????????????????????????? ? }

???????? ?? case 3:{

????????????????? ?????? printf("\n???請輸入你改的新性別");

???????? ?????????? scanf("%s",stu[i].sex);

????????????????????????? ?? break;

????????????????????????? ? }

???????? ?? case 4:{

????????????????? ?????? printf("\n???請輸入你改的新年齡");

???????? ????????? ?scanf("%d",&stu[i].age);

????????????????????????? ?? break;

????????????????????????? ? }

???????? ?? case 5:{

????????????????? ?????? printf("\n???請輸入你改的新班級");

???????? ??????????scanf("%s",stu[i].studentclass);

????????????????????????? ?? break;

????????????????????????? ? }

???????? ?? case 6:{

????????????????? ?????? printf("\n???請輸入你改的新成績");

???????? ??????????scanf("%d",&stu[i].score);

????????????????????????? ?? break;

????????????????????????? ? }

???????? ? }

???????? ?

???????? ?? printf("學號:%d,姓名:%s,性別:%s,年齡:%d,班級:%s,成績:%d\n",stu[i].num,stu[i].name,

????????????????? ?stu[i].sex,stu[i].age,stu[i].studentclass,stu[i].score);

??????printf("按任意鍵加回車返回主菜單!");

???????? ?? scanf("%d",&i);

???????? ?? break;

???????? ?}

}

下面是一個職工工資管理系統的程序,此程序類似于上方學生管理系統程序,代碼如下:

#include "stdafx.h"

#include "iostream"

#include "string"

#include "list"

#include "cassert"

using namespace std;

?

/*

編號、姓名、部門、應付工資、保險、稅金、實付工資。

其中實付工資由公式計算得到:實付工資=應付工資?-?保險-?稅金

*/

struct employee{

?string m_num;//編號

string m_name;//姓名

string m_dep;//部門

double m_salary;//應付工資

double m_insurance;//保險

double m_tax;//稅金

};

?

/*

(1)錄入:輸入職工數據,其中“實付工資”通過計算得到;

(2)刪除:刪除指定的職工信息(輸入姓名,若找到則刪除該信息)

(3)?修改:允許對已經錄入的數據重新進行編輯、修改;

(4)?顯示:顯示全體職工數據;

(5)查詢:

a.?輸入職工姓名,顯示該職工的全部數據;

b.?輸入某部門值,顯示該部門職工的數據、工資總額、平均工資。

(6)?退出程序。

*/

?

list<employee> emps;

?

int _tmain(int argc, _TCHAR* argv[])

{

?voidprint(const employee &e);

?voidinput();

?voiddel();

?voidmod();

?voidshow_all();

?voidshow_name();

?voidshow_dep();

?

?cout<<"簡易職工薪水管理程序?by做他\n";// delete this line

?cout<<"版權沒有請隨意復制或修改任何代碼\n";//deletethis line

?


?if(choose==4)

?

?return 0;

}

?void print(const employee &e)

{

?cout<<"編號:"<<e.m_num<<endl;

?cout<<"姓名:"<<e.m_name<<endl;

?cout<<"部門:"<<e.m_dep<<endl;

?cout<<"保險:"<<e.m_insurance<<endl;

?cout<<"稅金:"<<e.m_tax<<endl;

?cout<<"應付工資:"<<e.m_salary<<endl;

?cout<<"實付工資:"<<e.m_salary-e.m_insurance-e.m_tax<<endl;

}

?void input()

{

?string num,name,dep;

?double salary,ins,tax;

?cout<<"請輸入員工編號:";

cin>>num;

?cout<<"請輸入員工姓名:";

cin>>name;

?cout<<"請輸入員工部門:";

cin>>dep;

?cout<<"請輸入員工保險:";

cin>>ins;

?assert(!cin.fail());

?cout<<"請輸入員工稅金:";

cin>>tax;

?assert(!cin.fail());

?cout<<"請輸入員工應付工資:";

cin>>salary;

?assert(!cin.fail());

?employee temp;

?temp.m_dep=dep;

?temp.m_insurance=ins;

?temp.m_name=name;

?temp.m_num=num;

?temp.m_salary=salary;

?temp.m_tax=tax;

?emps.push_back(temp);

?cout<<"員工錄入操作完畢.\n";

}

?void del()

{

?if(emps.size()==0)

?{

?cout<<"沒有員工記錄.\n";

?return;

?}

?string name;

?boolisfind=false;

?cout<<"請輸入要刪除的員工姓名:";

cin>>name;

?list<employee>::iterator iter;

?for(iter=emps.begin();iter!=emps.end();iter++)

?{

?if(iter->m_name==name)

?{

?isfind=true;

?emps.erase(iter);

?cout<<"姓名為\""<<name<<"\"的員工記錄已刪除.\n";

?return;

?}

?}

?if(!isfind)

?{

?cout<<"沒有找到姓名為\""<<name<<"\"的員工.\n";

?return;

?}

}

?void mod()

{

?if(emps.size()==0)

?{

?cout<<"員工記錄為空.\n";

?return;

?}

?boolisfind=false;

?string name;

?cout<<"請輸入要修改的員工姓名:";

cin>>name;

?list<employee>::iterator iter;

?for(iter=emps.begin();iter!=emps.end();iter++)

?{

?if(iter->m_name==name)

?{

?isfind=true;

?cout<<"姓名為\""<<name<<"\"的員工記錄已找到.\n";

?break;

?}

?}

?if(isfind)

?{

?string num,name,dep;

?double tax,ins,salary;

?print(*iter);

?cout<<endl;

?cout<<"請輸入新的員工編號:";

cin>>num;

?cout<<"請輸入新的員工姓名:";

cin>>name;

?cout<<"請輸入新的員工部門:";

cin>>dep;

?cout<<"請輸入新的員工保險:";

cin>>ins;

?assert(!cin.fail());

?cout<<"請輸入新的員工稅金:";

cin>>tax;

?assert(!cin.fail());

?cout<<"請輸入新的員工工資:";

cin>>salary;

?assert(!cin.fail());

?iter->m_dep=dep;

?iter->m_insurance=ins;

?iter->m_name=name;

?iter->m_num=num;

?iter->m_salary=salary;

?iter->m_tax=tax;

?cout<<"1?員工記錄被成功修改.\n";

?}

?else

?{

?cout<<"沒有找到姓名為\""<<name<<"\"的員工記錄.\n";

?}

}

void show_all()

{

?if(emps.size()==0)

?{

?cout<<"員工記錄為空.\n";

?return;

?}

?cout<<"顯示全體員工數據:\n";

?cout<<"--------------------\n";

?list<employee>::iterator iter;

?for(iter=emps.begin();iter!=emps.end();iter++)

?{

?cout<<endl;

?




轉載于:https://blog.51cto.com/10973857/1789698

總結

以上是生活随笔為你收集整理的2个的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。