亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? kao7.cpp

?? 學生信息管理系統,功能不是很多,不過還行,能用了,
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
#include <stdio.h>
#include <stdlib.h>
#include<string.h>              //提供字符串比較函數:strcmp()
#include<fstream.h>             //文件控制頭函數
//*********************學生成績信息定義**************************
typedef struct  examine
{
	float math;
	float english;
	float suanfa;
	float huibian;
	float dianlu;
	float tiyu;
	float pingjun;
	float total;
}Exam;
//**********************學生課程信息定義**************************
typedef struct course
{
	char mon1[10],mon2[10],mon3[10],mon4[10],mon5[10];
	char tues1[10],tues2[10],tues3[10],tues4[10],tues5[10];
	char wed1[10],wed2[10],wed3[10],wed4[10],wed5[10];
	char thur1[10],thur2[10],thur3[10],thur4[10],thur5[10];
	char fri1[10],fri2[10],fri3[10],fri4[10],fri5[10];
}Cour;
//*********************學生學籍信息定義**************************
typedef struct stud
{
	long xuehao;
	char name[10];
	char sex[5];
	char xibie[10];  
	char banji[10];
	char address[40];
	char tel[10];
	char sushe[10];
	Exam chengji;        //內嵌聲明成績信息結構體
	Cour kecheng;       //內嵌聲明課程信息結構體
	struct stud * next;
}Stud;
Stud *head;           //定義鏈表頭結點指針(全局變量)
Stud *r,*R,*w;        //定義從鏈表任意段控制輸出的指針(全局變量)
FILE *fi1,*fi2;      //聲明文件操作變量指針(全局變量)
//******************************函數聲明部分***************************************
void caidan();     //
void caidan1();
void caidan2();
void caidan3();
void caidan4();
void caidan5();
void caidan6();    //六個菜單函數

void xuehaoDel(long x);      //按學號刪除函數
void nameDel(char x[]);      //按姓名刪除函數
void shuru();                //輸入基本信息和成績函數
void shuru1();               //輸入課表信息函數
void inser(long b);          //錄入,插入新學生信息函數

void print();       //        
void print2();
void print3();
void print4();    //四個控制打印信息函數

void output();
void output1();
void output2();    //三類信息的打印函數

void paixu();               //按學號排序函數
void paixu1();              //按考試成績排序函數
void find(long b);          //按學號查找函數
void find1(char b[10]);     //按姓名查找函數
void open();                //打開信息庫文件輸出信息函數
void close();               //保存信息到信息庫文件函數
void gengxin(long b);       //更新學生信息函數
int  tongji();              //統計學生信息個數函數
//*********************主函數定義************************** 
void main()                                     //主函數開始
{ 
    char name[10]; 
    int choose,choose1,n,menu=1;  //定義三個控制循環的變量
	long m;		  //定義用來做學號查詢的變量
	open();       //打開信息庫文件載入學生信息      
    do            //循環操作控制
    {  
	   if(menu==1)           //判斷是否重新顯示主菜單
		   caidan();         //調用功能菜單函數,顯示菜單項。
	   menu=1;           //默認從個子功能模塊跳出后自動顯示主菜單 
	   printf("請選擇>>");
       scanf("%ld",&choose); 
       switch(choose) 
	   {
        case 1:             //進入錄入,插入新學生信息功能模塊
			system("cls");   //自動清屏函數(系統提供)
			caidan3();      //調用子菜單
			do           //連續插入新信息循環控制
			{
	        printf("請輸入新學生學號:\n"); 
	        scanf("%ld",&m); 
	        inser(m);           //調用插入新的學生信息的函數;
	        print();	     //顯示插入的新學生信息
			printf("\n繼續插入請輸入1返回總菜單輸入0:");
			scanf("%d",&m);
			}while(m==1);
			system("cls");   //自動清屏函數(系統提供)
			break; 
		case 2:            //進入按學號升序排序輸出信息功能模塊
			system("cls");   ////自動清屏函數(系統提供)
			caidan4();	    //調用輸出哪類信息子菜單
			n=tongji();	    //調用統計函數	
			paixu();      //調用按學號排序函數
			do           //控制,實現循環查詢功能
			{
			printf("\n請選擇>>");
			scanf("%d",&choose1);
			switch(choose1)
			{
			case 1:
				printf("一共有%d個學生,信息如下:\n",n);	   
				print2(); //調用打印學生基本信息函數
	            break; 
			case 2:   
				printf("一共有%d個學生,成績信息如下:\n",n);	   
				print3();        //調用打印學生成績信息函數
				break; 
			case 3:
				printf("一共有%d個學生,信息如下:\n",n);	  
				print4();      //調用打印學生課程信息函數
				break;
			default: 
			    printf("\n選擇錯誤,請重新選擇!\n"); 
                break;	
			}	
			}while(choose1!=0);
			system("cls");//自動清屏函數(系統提供) 
            menu=1;
            break;
		case 3:	          //進入學生考試成績排名功能模塊
			n=tongji();	   //調用統計函數   
			printf("一共有%d個學生,分數從高到低排列如下:\n",n);	   
			paixu1();       //調用成績排名函數
			print3();       //調用打印學生成績函數
		    menu=0;         //控制跳出后不必再顯示主菜單
			break;
		case 4:              //進入查詢學生信息功能模塊
            system("cls");   ////自動清屏函數(系統提供)		
			do           // 控制循環查詢信息
			{
			caidan1();      //調用查詢功能子菜單
			printf("\n請選擇>>");
			scanf("%d",&choose1);
			switch(choose1)
			{
			case 1:           //按學號查詢信息
				do        //控制循環查詢
				{
				printf("請輸入你要查找的學號:"); 
                scanf("%ld",&m); 
                find(m);            //調用按學號查詢信息函數
				printf("\n繼續查找請輸入1:\n返回上級菜單輸入0:\n");
			    scanf("%d",&m);
				}while(m==1);
				system("cls");      ////自動清屏函數(系統提供)
	            break; 
			case 2:       //按姓名查詢信息 
				do        //控制循環查詢
				{
		        printf("請輸入你要查找的姓名:"); 
                scanf("%s",name); 
                find1(name);        //調用按姓名查詢學生信息函數
				printf("\n繼續查找請輸入1\n返回上級菜單輸入0:\n");
			    scanf("%d",&m);    
				}while(m==1);
				system("cls");  ////自動清屏函數(系統提供)
	            break; 
			default: 
			    printf("\n選擇錯誤,請重新選擇!\n"); 
                break;	
			}
			}while(choose1!=0);
			system("cls");       ////自動清屏函數(系統提供)	
			break;
		case 5:         //進入統計學生信息個數功能模塊
			n=tongji();    //調用統計個數函數
			printf("數據庫中一共有%d個學生信息.\n",n);
			printf("\n");
			menu=0;     //控制跳出后不必再顯示主菜單
			break; 
		case 6:	     //進入更新信息功能模塊
			system("cls");   ////自動清屏函數(系統提供)
			caidan6();   //調用更新功能子菜單函數
			do     // 控制循環更新修改學生信息
			{  
				printf("\n\n請輸入要更新修改信息的學生學號:");
		        scanf("%ld",&m);
			    gengxin(m);   //調用更新信息函數
			    printf("\n繼續更新請輸入1返回總菜單輸入0:");
		        scanf("%d",&m);
		     	menu=1;    //控制跳出后重新顯示主菜單
			}while(m==1);
			system("cls");   ////自動清屏函數(系統提供)
	        break; 
		case 7:      //進入刪除學生信息功能模塊
		    system("cls");  ////自動清屏函數(系統提供)
			caidan2();     //調用刪除信息子菜單   
			do          //控制循環刪除信息
			{
			printf("\n請選擇>>");
			scanf("%d",&choose1);
			switch(choose1)
			{
			case 1:      //按學號刪除信息
				do         //控制循環按學號刪除信息
				{
				printf("請輸入要刪除的學生學號:");
				scanf("%ld",&m);
			    xuehaoDel(m);      //調用按學號刪除信息函數
			    printf("\n繼續刪除請輸入1\n返回總菜單輸入0:");
			    scanf("%d",&m);
				}while(m==1);
				system("cls");  ////自動清屏函數(系統提供)
	            break; 
			case 2:	      //按姓名刪除信息
				do       //控制循環按姓名刪除
				{
				printf("請輸入要刪除的學生姓名:");
				scanf("%s",name);
				nameDel(name);         //調用按姓名刪除信息函數
		    	printf("\n繼續刪除請輸入1\n返回總菜單輸入0:");
			    scanf("%d",&m);
				}while(m==1);
				system("cls");       ////自動清屏函數(系統提供)
	            break;
			case 3:     //全部刪除信息
				printf("確定全部刪除請輸入:1  (刪除后再保存將不能恢復!)\n放棄刪除請輸入:0\n");
				scanf("%d",&choose1);
				if(choose1==1)
				{
					head->next=NULL;
				    printf("\n全部刪除成功!");
				}
				break;
		    default: 
			    printf("\n選擇錯誤,請重新選擇!\n"); 
                break;	
			}
			}while(choose1!=0);
			system("cls");  ////自動清屏函數(系統提供)
			break;
        default: 
			printf("\n選擇錯誤,請重新選擇!\n"); 
            break;
	   }
	}while(choose!=0);
	close();     //調用保存信息進庫文件函數
	printf("\n *** !數據保存成功! ***\n"); 
    printf("感謝使用!請按任意鍵退出!\n");  //**********************結束程序運行!
}

//******************************插入函數************************************
void inser(long b) 
{ 	
	Stud *q;
	q=head->next;	
	while(q!=NULL&&b!=q->xuehao)   //檢查是否存已在該同學
		q=q->next; 
	r=q;
	if(!q)                       //如果還沒存在該同學就添加進信息庫
	{	
		r=head;
		while(r->next!=NULL)    //找到鏈表的尾結點
			r=r->next;
		while(b>0)
		{
			R=(Stud *)malloc(sizeof(Stud));     //申請一個新結點
			R->xuehao=b; 
			shuru();           //調用輸入信息函數
	        R->next=NULL; 
            r->next=R; 
	        r=r->next;
		    b=-1;          //控制循環
		    printf("!插入成功!具體信息如下:\n");	
		}
	}
	else 
		printf("信息庫中已存在該同學!\n");	

} 
//***************************輸出單條信息*******************************************
void print() 
{ 
	w=r;
	if(w!=NULL)
	{ 
	    printf("\n學號      姓名      性別      系別      班級      宿舍     電話     家庭地址 \n");
		output();   //調用輸出學籍基本信息函數
		printf("\n考試成績:  高數    英語    算法    匯編    電路    體育    總分    平均分 \n");
		printf("           ");
		output1();     //調用輸出成績信息函數
		printf("\n\n課表信息:  星期一       星期二       星期三       星期四       星期五\n");
		output2();      //調用輸出課表信息函數
	} 
	printf("\n"); 
} 
//****************************輸出全部信息**********************************
void print2() 
{ 
	Stud *q=head; 
	printf("\n學號      姓名      性別      系別      班級      宿舍     電話       家庭地址 \n"); 
	w=head->next;
	while (w!=NULL)
	{	 
		output();             //調用輸出學籍基本信息函數
		w=w->next;           //指向下一個結點準備輸出下一個同學的信息
	}
	printf("\n"); 
} 
//****************************輸出成績信息*************************************
void print3() 
{  
	printf("\n學號  姓名   班級   高數   英語    算法    匯編    電路    體育    總分   平均分 \n"); 
	w=head->next;
	while (w!=NULL)
	{
		printf("%-6ld%-6s %-4s  ",w->xuehao,w->name,w->banji);
		output1();//調用輸出成績信息函數
		printf("\n");
		w=w->next;            //指向下一個結點準備輸出下一個同學的信息
	}
	printf("\n"); 
}
//*****************************輸出課表信息****************************************
void print4() 
{ 
	w=head->next;
	while (w!=NULL)
	{	printf("\n學號: %ld     姓名: %s     班級:%s\n",w->xuehao,w->name,w->banji);
	    printf("\n課表信息:  星期一       星期二       星期三       星期四       星期五\n");
		output2();              //調用輸出課表信息函數
		printf("\n");
		w=w->next;          //指向下一個結點準備輸出下一個同學的信息
	}
	printf("\n"); 
}
//****************************按學號升序排序****************************************
void paixu()                                     //按學號排序
{
	Stud *H,*L,*P;
    int i,j,flag,n;
	n=tongji();          //調用統計個數函數
    for(i=0;i<n-1;i++)
	{
		flag=0;         //退出控制符
		H=head;          
		L=H->next;
		P=L->next;
		for(j=1;j<n-i;j++)
		{
			if(L->xuehao>P->xuehao)    //如果當前結點同學學號大于下個結點學號則通過指針調換前后順序
			{
				H->next=P;
				L->next=P->next;  
				P->next=L;
				flag=flag+1;
			}	
			H=H->next;
		    L=H->next;
		    P=L->next;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区三区电影在线观看| 国产精品传媒在线| 中文字幕欧美日韩一区| 亚洲国产精品视频| 成人白浆超碰人人人人| 91精品国产综合久久香蕉麻豆 | 欧美日本精品一区二区三区| 欧美不卡在线视频| 亚洲18女电影在线观看| www.日韩av| 国产日产欧美一区二区三区 | 欧美日韩综合在线免费观看| 亚洲国产精品国自产拍av| 久久精品免费看| 欧美日韩免费在线视频| 亚洲精品视频一区二区| 91美女视频网站| 国产精品久久综合| 成人免费视频视频在线观看免费 | 欧美少妇xxx| 中文字幕一区二区三区在线观看| 国产一区二区网址| 精品国产精品网麻豆系列| 日本女人一区二区三区| 91精品麻豆日日躁夜夜躁| 日韩精品乱码免费| 欧美肥胖老妇做爰| 日韩av不卡一区二区| 91精品中文字幕一区二区三区 | 国产精品欧美一区喷水| 国产高清成人在线| 国产校园另类小说区| 国产精品1区2区3区| 久久久久久日产精品| 国产精品99久久久| 国产精品乱码人人做人人爱 | 国产一区二区伦理| 久久久久久久久97黄色工厂| 精品一区在线看| 久久色中文字幕| 成人午夜在线视频| 亚洲欧洲av在线| 在线视频国产一区| 全国精品久久少妇| 欧美精品一区二区久久婷婷| 国产成人精品一区二区三区四区| 国产精品视频麻豆| 欧美伊人久久久久久久久影院| 亚洲午夜久久久久久久久久久| 欧美男人的天堂一二区| 久久国产精品99久久人人澡| 亚洲国产高清在线| 欧美性大战xxxxx久久久| 久久97超碰国产精品超碰| 国产精品久久久久婷婷| 欧美日韩亚州综合| 国产一区二区不卡在线| 亚洲人成精品久久久久| 日韩一级片网站| 成人av网站免费观看| 香蕉久久夜色精品国产使用方法| 日韩视频免费观看高清在线视频| 成人黄色777网| 日韩极品在线观看| 中文字幕欧美国产| 欧美剧情片在线观看| 国产福利91精品一区| 亚洲成av人在线观看| 久久日韩精品一区二区五区| 色狠狠桃花综合| 久久电影网电视剧免费观看| 亚洲色图另类专区| 精品国产伦一区二区三区免费| 99re这里都是精品| 蜜乳av一区二区| 亚洲午夜成aⅴ人片| 国产婷婷一区二区| 欧美电影一区二区三区| 99精品视频中文字幕| 奇米色一区二区三区四区| 椎名由奈av一区二区三区| 日韩欧美一区电影| 欧美性猛片xxxx免费看久爱| 国产成人自拍在线| 久久66热偷产精品| 视频一区二区三区中文字幕| 国产精品高潮久久久久无| 精品粉嫩超白一线天av| 欧美日韩激情一区| 色综合视频在线观看| 国产v综合v亚洲欧| 精品写真视频在线观看| 亚洲chinese男男1069| 一区二区三区鲁丝不卡| 中文字幕巨乱亚洲| 精品国产1区二区| 欧美一区二区三区视频免费播放| 日本高清不卡aⅴ免费网站| 国产成人免费视频网站高清观看视频| 日韩精品乱码免费| 日韩在线卡一卡二| 亚洲第一搞黄网站| 午夜精品久久久久久久99樱桃| 亚洲桃色在线一区| 综合色天天鬼久久鬼色| 中文一区二区在线观看 | 日韩精品中文字幕一区 | 久久99久久99| 久久国产剧场电影| 精品一区二区三区在线视频| 免费av成人在线| 久久国产人妖系列| 国产一区二区三区免费| 国产精品一区二区久久精品爱涩| 极品美女销魂一区二区三区 | 97成人超碰视| 91蝌蚪porny成人天涯| 在线观看日产精品| 欧美亚洲国产bt| 欧美精品日韩精品| 91精品国产日韩91久久久久久| 欧美日本一区二区三区| 欧美一级淫片007| 精品国产网站在线观看| 国产网红主播福利一区二区| 一区在线中文字幕| 一区二区三区在线免费播放| 午夜久久福利影院| 久草热8精品视频在线观看| 精品在线一区二区| 成人激情小说乱人伦| 色婷婷精品久久二区二区蜜臀av| 欧美日本一区二区在线观看| 日韩精品一区二区三区视频在线观看 | 日日夜夜精品视频免费| 捆绑调教一区二区三区| 高清日韩电视剧大全免费| av不卡免费电影| 欧美三级蜜桃2在线观看| 91精品国产91久久久久久最新毛片| 精品国产乱码久久久久久1区2区| 久久精品一二三| 一区二区三区丝袜| 免费在线观看一区| www.久久精品| 884aa四虎影成人精品一区| 久久综合九色综合欧美就去吻| 国产精品嫩草影院av蜜臀| 天堂久久一区二区三区| 国产馆精品极品| 91麻豆精品国产自产在线| 中文字幕精品在线不卡| 午夜电影网亚洲视频| 成人高清视频免费观看| 欧美色中文字幕| 国产精品天天看| 六月婷婷色综合| 在线观看91视频| 久久精品视频免费观看| 性久久久久久久久| 99久久精品免费| 久久久美女毛片| 日本不卡免费在线视频| 色域天天综合网| 欧美国产一区二区| 美女免费视频一区| 在线观看免费亚洲| 中文无字幕一区二区三区| 日韩电影在线一区二区| 一本大道久久a久久精品综合 | 91精品在线一区二区| 亚洲精品久久嫩草网站秘色| 国产精品综合一区二区| 欧美第一区第二区| 午夜免费久久看| 欧美日韩一区不卡| 一区二区三区在线视频播放 | 国产精品一区二区三区乱码| 在线观看91av| 亚洲另类在线一区| jizz一区二区| 国产精品免费观看视频| 国产精品一卡二卡| 精品国产一区a| 美美哒免费高清在线观看视频一区二区| 色综合中文字幕| 亚洲日本护士毛茸茸| 成人美女视频在线观看18| 国产亚洲欧洲一区高清在线观看| 免费精品视频在线| 欧美成人欧美edvon| 免费成人美女在线观看.| 日韩一区二区在线看| 日韩二区三区在线观看| 欧美精品三级日韩久久| 日本成人在线网站| 精品国精品自拍自在线| 激情五月激情综合网| 久久久噜噜噜久久中文字幕色伊伊| 激情久久五月天|