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

蟲蟲首頁(yè)| 資源下載| 資源專輯| 精品軟件
登錄| 注冊(cè)

N進(jìn)(jìn)制計(jì)數(shù)(shù)器原

  • 壓縮解壓算法LZ77算法有許多派生算法(這里面包括 LZSS算法)。它們的算法原理上基本都相同

    壓縮解壓算法LZ77算法有許多派生算法(這里面包括 LZSS算法)。它們的算法原理上基本都相同,無(wú)論是哪種派生算法,LZ77算法總會(huì)包含一個(gè)動(dòng)態(tài)窗口(Sliding Window)和一個(gè)預(yù)讀緩沖器(Read Ahead Buffer)。動(dòng)態(tài)窗口是個(gè)歷史緩沖器,它被用來(lái)存放輸入流的前n個(gè)字節(jié)的有關(guān)信息。一個(gè)動(dòng)態(tài)窗口的數(shù)據(jù)范圍可以從 0K 到 64K,而LZSS算法使用了一個(gè)4K的動(dòng)態(tài)窗口。預(yù)讀緩沖器是與動(dòng)態(tài)窗口相對(duì)應(yīng)的,它被用來(lái)存放輸入流的前n個(gè)字節(jié),預(yù)讀緩沖器的大小通常在0 – 258 之間。這個(gè)算法就是基于這些建立的。用下n個(gè)字節(jié)填充預(yù)讀緩存器(這里的n是預(yù)讀緩存器的大小)。在動(dòng)態(tài)窗口中尋找與預(yù)讀緩沖器中的最匹配的數(shù)據(jù),如果匹配的數(shù)據(jù)長(zhǎng)度大于最小匹配長(zhǎng)度 (通常取決于編碼器,以及動(dòng)態(tài)窗口的大小,比如一個(gè)4K的動(dòng)態(tài)窗口,它的最小匹配長(zhǎng)度就是2),那么就輸出一對(duì)〈長(zhǎng)度(length),距離(distance)〉數(shù)組。長(zhǎng)度(length)是匹配的數(shù)據(jù)長(zhǎng)度,而距離(distance)說(shuō)明了在輸入流中向后多少字節(jié)這個(gè)匹配數(shù)據(jù)可以被找到。

    標(biāo)簽: 算法 LZSS LZ 77

    上傳時(shí)間: 2014-01-22

    上傳用戶:tzl1975

  • 歐基理德輾轉(zhuǎn)相除法(之一) 以歐基理德輾轉(zhuǎn)相除法求出m

    歐基理德輾轉(zhuǎn)相除法(之一) 以歐基理德輾轉(zhuǎn)相除法求出m,n這2個(gè)整數(shù)的最大公因數(shù)

    標(biāo)簽: 除法

    上傳時(shí)間: 2013-12-30

    上傳用戶:wangzhen1990

  • 成績(jī)查詢系統(tǒng)

    #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語(yǔ)成績(jī)排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績(jī)排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績(jī)排序 void sort_student5(student s[],int);//按照平均成績(jī)排序 float input_score2(int);//計(jì)算學(xué)生平均成績(jī) void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績(jī) void input_score1(void);//統(tǒng)計(jì)成績(jī)總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績(jī)       英語(yǔ)成績(jī)     計(jì)算機(jī)成績(jī)     平均成績(jī)\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績(jī)總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績(jī)錄入成功!\n");   stu[c].average=input_score2(c);   } void input_score3(int a)//統(tǒng)計(jì)成績(jī)   {   printf("數(shù)學(xué)新成績(jī):");   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)新成績(jī):");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)新成績(jī):");   scanf("%f",&stu[a].sco.computer);   } void change_student2(int a)//修改學(xué)生資料   {   printf("學(xué)號(hào):%d----修改為:",stu[a].number);   scanf("%d",&stu[a].number);   getchar();   printf("姓名:%s----修改為:",stu[a].name);   gets(stu[a].name);   printf("數(shù)學(xué)成績(jī):%.2f----修改為:",stu[a].sco.math);   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)成績(jī):%.2f----修改為:",stu[a].sco.english);   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績(jī):%.2f----修改為:",stu[a].sco.computer);   scanf("%f",&stu[a].sco.computer);   } void change_student1(void)//修改總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否要修改此學(xué)生信息?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     change_student2(c);       stu[c].average=input_score2(c);     printf("信息修改成功!\n");     }   } void delete_student1(void)//刪除總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否刪除此條記錄?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     delete_student2(c,iNumOfStu);     printf("記錄已刪除!\n");     }   } void delete_student2(int a,int b)//刪除學(xué)生信息   {   for(int i=a;i<b-1;i++)     {     stu[i]=stu[i+1];     }   --iNumOfStu;   } void search_student1(void)//查詢總函數(shù)   {   printf("1、按學(xué)號(hào)查詢\n2、按平均分最高查詢\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       search_student2(iNumOfStu);       break;       }     case 2:       {       search_student3(iNumOfStu);       break;       }     default: break;     }   } void menu(void)//菜單調(diào)度總函數(shù)   {   print_menu();   choosemenu();   } void sort_student1(void)//排序總函數(shù)   {   printf("1、按數(shù)學(xué)成績(jī)排序\n2、按英語(yǔ)成績(jī)排序\n3、按計(jì)算機(jī)成績(jī)排序\n4、按平均成績(jī)排序\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       sort_student2(stu,iNumOfStu);       break;       }     case 2:       {       sort_student3(stu,iNumOfStu);       break;       }     case 3:       {       sort_student4(stu,iNumOfStu);       break;       }     case 4:       {       sort_student5(stu,iNumOfStu);       break;       }     default: break;     }   } void print_student1(int a)//顯示全部學(xué)生資料   {   printf("本班所有學(xué)生具體信息如下\n");   print_student2();   for(int i=0;i<a;i++)     {     print_student3(i);     }   } void print_student3(int a)//顯示學(xué)生信息   {   printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average);   } void print_student2(void)//顯示表頭   {   printf("  學(xué)號(hào)       姓名           數(shù)學(xué)成績(jī)       英語(yǔ)成績(jī)     計(jì)算機(jī)成績(jī)     平均成績(jī)\n");   } void input_student4(int a,int b)//覆蓋原信息   {   stu[a]=stu[b-1];   --iNumOfStu;   } void input_student3(int &a,int b)//判斷學(xué)號(hào)是否重復(fù)   {   if(a!=0)     {     int i=0;     do       {       if(stu[a].number==stu[i].number)         {         printf("此學(xué)號(hào)代表的學(xué)生已錄入\n1、覆蓋原信息\n2、重新輸入\n請(qǐng)選擇:");         int c;         scanf("%d",&c);         switch(c)           {           case 1:             {             input_student4(i,iNumOfStu);             a=iNumOfStu-1;             printf("信息已替換!\n");             break;             }           case 2:             {             printf("請(qǐng)重新輸入學(xué)生信息:\n");             input_student1(iNumOfStu-1);             break;             }           default: break;           }         break;         }       ++i;       }       while(i<b-1);     }   } void print_menu(void)//輸出菜單   {   printf("======歡迎來(lái)到學(xué)生信息管理系統(tǒng)======\n");   printf("      1、輸入學(xué)生資料\n");   printf("      2、刪除學(xué)生資料\n");   printf("      3、查詢學(xué)生資料\n");   printf("      4、修改學(xué)生資料\n");   printf("      5、顯示學(xué)生資料\n");   printf("      6、統(tǒng)計(jì)學(xué)生成績(jī)\n");   printf("      7、排序?qū)W生成績(jī)\n");   printf("      8、保存學(xué)生資料\n");   printf("      9、獲取幫助信息\n");   printf("      10、退出系統(tǒng)\n");   printf("====================================\n");   printf("請(qǐng)選擇:");   } void input_student2(void)//輸入總函數(shù)   {   char end;   printf("請(qǐng)輸入學(xué)生信息(在最后一個(gè)學(xué)生信息錄入完成后以“/”結(jié)束錄入):\n");   for(int i=0;(end=getchar())!='/';i++)     {     input_student1(i);     ++iNumOfStu;     input_student3(i,iNumOfStu);     }   for(int j=0;j<iNumOfStu;j++)     {     stu[j].average=input_score2(j);     }   } void input_student1(int a)//輸入學(xué)生信息   {   printf("學(xué)號(hào):");   scanf("%d",&stu[a].number);   getchar();   printf("姓名:");   gets(stu[a].name);   printf("數(shù)學(xué)成績(jī):");   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)成績(jī):");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績(jī):");   scanf("%f",&stu[a].sco.computer);   } float input_score2(int a)//計(jì)算學(xué)生平均成績(jī)   {   return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3;   } void search_student3(int a)//按平均分最高查詢并輸出   {   int max=0;   for(int i=0;i<a;i++)     {     if(stu[max].average<stu[i].average)       {       max=i;       }     }   print_student2();   print_student3(max);   } void sort_student2(student s[],int a)//按照數(shù)學(xué)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.math>stu[max].sco.math)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student3(student s[],int a)//按照英語(yǔ)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.english>stu[max].sco.english)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student4(student s[],int a)//按照計(jì)算機(jī)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.computer>stu[max].sco.computer)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student5(student s[],int a)//按照平均成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].average>stu[max].average)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } int search_student2(int a)//按照學(xué)號(hào)查找學(xué)生并輸出   {   int num;   int c;   printf("請(qǐng)輸入要查詢的學(xué)號(hào):");   scanf("%d",&num);   for(int i=0;i<a;i++)     {     if(num==stu[i].number)       {       c=i;       }     }   printf("此學(xué)生的信息是:\n");   print_student2();   print_student3(c);   return c;   } void choosemenu(void)//菜單選擇   {   int i;   scanf("%d",&i);   switch(i)     {     case 1:       {       input_student2();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 2:       {       delete_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 3:       {       search_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 4:       {       change_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 5:       {       print_student1(iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 6:       {       input_score1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 7:       {       sort_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 8:       {       save_student(stu,iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 9:       {       print_help();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 10:       {       exit_student();       }     default: break;     }   }         運(yùn)行結(jié)果:                         源文件下載地址: http://115.com/file/clnq138g#一個(gè)簡(jiǎn)單的學(xué)生成績(jī)管理系統(tǒng).rar (請(qǐng)將此地址復(fù)制到瀏覽器地址欄中訪問(wèn)下載頁(yè)面)  

    標(biāo)簽: 成績(jī)查詢系統(tǒng)

    上傳時(shí)間: 2019-06-08

    上傳用戶:啊的撒旦

  • 學(xué)生成績(jī)guanli

    #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語(yǔ)成績(jī)排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績(jī)排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績(jī)排序 void sort_student5(student s[],int);//按照平均成績(jī)排序 float input_score2(int);//計(jì)算學(xué)生平均成績(jī) void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績(jī) void input_score1(void);//統(tǒng)計(jì)成績(jī)總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績(jī)       英語(yǔ)成績(jī)     計(jì)算機(jī)成績(jī)     平均成績(jī)\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績(jī)總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績(jī)錄入成功!\n");   stu[c].average=input_score2(c);   } void input_score3(int a)//統(tǒng)計(jì)成績(jī)   {   printf("數(shù)學(xué)新成績(jī):");   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)新成績(jī):");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)新成績(jī):");   scanf("%f",&stu[a].sco.computer);   } void change_student2(int a)//修改學(xué)生資料   {   printf("學(xué)號(hào):%d----修改為:",stu[a].number);   scanf("%d",&stu[a].number);   getchar();   printf("姓名:%s----修改為:",stu[a].name);   gets(stu[a].name);   printf("數(shù)學(xué)成績(jī):%.2f----修改為:",stu[a].sco.math);   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)成績(jī):%.2f----修改為:",stu[a].sco.english);   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績(jī):%.2f----修改為:",stu[a].sco.computer);   scanf("%f",&stu[a].sco.computer);   } void change_student1(void)//修改總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否要修改此學(xué)生信息?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     change_student2(c);       stu[c].average=input_score2(c);     printf("信息修改成功!\n");     }   } void delete_student1(void)//刪除總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   getchar();   printf("是否刪除此條記錄?(“y”代表是)");   char d;   scanf("%c",&d);   if(d=='y'||d=='Y')     {     delete_student2(c,iNumOfStu);     printf("記錄已刪除!\n");     }   } void delete_student2(int a,int b)//刪除學(xué)生信息   {   for(int i=a;i<b-1;i++)     {     stu[i]=stu[i+1];     }   --iNumOfStu;   } void search_student1(void)//查詢總函數(shù)   {   printf("1、按學(xué)號(hào)查詢\n2、按平均分最高查詢\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       search_student2(iNumOfStu);       break;       }     case 2:       {       search_student3(iNumOfStu);       break;       }     default: break;     }   } void menu(void)//菜單調(diào)度總函數(shù)   {   print_menu();   choosemenu();   } void sort_student1(void)//排序總函數(shù)   {   printf("1、按數(shù)學(xué)成績(jī)排序\n2、按英語(yǔ)成績(jī)排序\n3、按計(jì)算機(jī)成績(jī)排序\n4、按平均成績(jī)排序\n請(qǐng)選擇:");   int c;   scanf("%d",&c);   switch(c)     {     case 1:       {       sort_student2(stu,iNumOfStu);       break;       }     case 2:       {       sort_student3(stu,iNumOfStu);       break;       }     case 3:       {       sort_student4(stu,iNumOfStu);       break;       }     case 4:       {       sort_student5(stu,iNumOfStu);       break;       }     default: break;     }   } void print_student1(int a)//顯示全部學(xué)生資料   {   printf("本班所有學(xué)生具體信息如下\n");   print_student2();   for(int i=0;i<a;i++)     {     print_student3(i);     }   } void print_student3(int a)//顯示學(xué)生信息   {   printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average);   } void print_student2(void)//顯示表頭   {   printf("  學(xué)號(hào)       姓名           數(shù)學(xué)成績(jī)       英語(yǔ)成績(jī)     計(jì)算機(jī)成績(jī)     平均成績(jī)\n");   } void input_student4(int a,int b)//覆蓋原信息   {   stu[a]=stu[b-1];   --iNumOfStu;   } void input_student3(int &a,int b)//判斷學(xué)號(hào)是否重復(fù)   {   if(a!=0)     {     int i=0;     do       {       if(stu[a].number==stu[i].number)         {         printf("此學(xué)號(hào)代表的學(xué)生已錄入\n1、覆蓋原信息\n2、重新輸入\n請(qǐng)選擇:");         int c;         scanf("%d",&c);         switch(c)           {           case 1:             {             input_student4(i,iNumOfStu);             a=iNumOfStu-1;             printf("信息已替換!\n");             break;             }           case 2:             {             printf("請(qǐng)重新輸入學(xué)生信息:\n");             input_student1(iNumOfStu-1);             break;             }           default: break;           }         break;         }       ++i;       }       while(i<b-1);     }   } void print_menu(void)//輸出菜單   {   printf("======歡迎來(lái)到學(xué)生信息管理系統(tǒng)======\n");   printf("      1、輸入學(xué)生資料\n");   printf("      2、刪除學(xué)生資料\n");   printf("      3、查詢學(xué)生資料\n");   printf("      4、修改學(xué)生資料\n");   printf("      5、顯示學(xué)生資料\n");   printf("      6、統(tǒng)計(jì)學(xué)生成績(jī)\n");   printf("      7、排序?qū)W生成績(jī)\n");   printf("      8、保存學(xué)生資料\n");   printf("      9、獲取幫助信息\n");   printf("      10、退出系統(tǒng)\n");   printf("====================================\n");   printf("請(qǐng)選擇:");   } void input_student2(void)//輸入總函數(shù)   {   char end;   printf("請(qǐng)輸入學(xué)生信息(在最后一個(gè)學(xué)生信息錄入完成后以“/”結(jié)束錄入):\n");   for(int i=0;(end=getchar())!='/';i++)     {     input_student1(i);     ++iNumOfStu;     input_student3(i,iNumOfStu);     }   for(int j=0;j<iNumOfStu;j++)     {     stu[j].average=input_score2(j);     }   } void input_student1(int a)//輸入學(xué)生信息   {   printf("學(xué)號(hào):");   scanf("%d",&stu[a].number);   getchar();   printf("姓名:");   gets(stu[a].name);   printf("數(shù)學(xué)成績(jī):");   scanf("%f",&stu[a].sco.math);   printf("英語(yǔ)成績(jī):");   scanf("%f",&stu[a].sco.english);   printf("計(jì)算機(jī)成績(jī):");   scanf("%f",&stu[a].sco.computer);   } float input_score2(int a)//計(jì)算學(xué)生平均成績(jī)   {   return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3;   } void search_student3(int a)//按平均分最高查詢并輸出   {   int max=0;   for(int i=0;i<a;i++)     {     if(stu[max].average<stu[i].average)       {       max=i;       }     }   print_student2();   print_student3(max);   } void sort_student2(student s[],int a)//按照數(shù)學(xué)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.math>stu[max].sco.math)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student3(student s[],int a)//按照英語(yǔ)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.english>stu[max].sco.english)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student4(student s[],int a)//按照計(jì)算機(jī)成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].sco.computer>stu[max].sco.computer)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } void sort_student5(student s[],int a)//按照平均成績(jī)排序   {   struct student temp;   for(int i=0;i<a-1;i++)     {     int max=i;     for(int j=i+1;j<a;j++)       if(stu[j].average>stu[max].average)         {         max=j;         }     if(max!=i)       {       temp=stu[max];       stu[max]=stu[i];       stu[i]=temp;       }     }   print_student2();   for(int k=0;k<a;k++)     {     print_student3(k);     }   } int search_student2(int a)//按照學(xué)號(hào)查找學(xué)生并輸出   {   int num;   int c;   printf("請(qǐng)輸入要查詢的學(xué)號(hào):");   scanf("%d",&num);   for(int i=0;i<a;i++)     {     if(num==stu[i].number)       {       c=i;       }     }   printf("此學(xué)生的信息是:\n");   print_student2();   print_student3(c);   return c;   } void choosemenu(void)//菜單選擇   {   int i;   scanf("%d",&i);   switch(i)     {     case 1:       {       input_student2();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 2:       {       delete_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 3:       {       search_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 4:       {       change_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 5:       {       print_student1(iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 6:       {       input_score1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 7:       {       sort_student1();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 8:       {       save_student(stu,iNumOfStu);       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 9:       {       print_help();       printf("按回車鍵返回主菜單");       getchar();       getchar();       menu();       break;       }     case 10:       {       exit_student();       }     default: break;     }   }         運(yùn)行結(jié)果:                         源文件下載地址: http://115.com/file/clnq138g#一個(gè)簡(jiǎn)單的學(xué)生成績(jī)管理系統(tǒng).rar (請(qǐng)將此地址復(fù)制到瀏覽器地址欄中訪問(wèn)下載頁(yè)面)   #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score   {   float math;   float english;   float computer;   }; struct student   {   int number;   char name[20];   struct score sco;   float average;   }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學(xué)生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學(xué)號(hào)是否重復(fù) void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語(yǔ)成績(jī)排序 void sort_student4(student s[],int);//按照計(jì)算機(jī)成績(jī)排序 void sort_student2(student s[],int);//按照數(shù)學(xué)成績(jī)排序 void sort_student5(student s[],int);//按照平均成績(jī)排序 float input_score2(int);//計(jì)算學(xué)生平均成績(jī) void print_student2(void);//顯示表頭 void print_student3(int);//顯示學(xué)生信息 void print_student1(int);//顯示全部學(xué)生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學(xué)號(hào)查詢學(xué)生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學(xué)生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學(xué)生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計(jì)成績(jī) void input_score1(void);//統(tǒng)計(jì)成績(jī)總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學(xué)生信息 void main()   {   menu();   } void save_student(student *s,int a)//保存學(xué)生信息   {   FILE *fp;     if((fp=fopen("d:\\學(xué)生信息.txt","wb"))==NULL)       {       printf("不能打開文件!\n");       }     else       {       printf("保存信息到D盤\n");       fprintf(fp,"本班所有學(xué)生具體信息如下:\r\n");       fprintf(fp,"  學(xué)號(hào)       姓名           數(shù)學(xué)成績(jī)       英語(yǔ)成績(jī)     計(jì)算機(jī)成績(jī)     平均成績(jī)\r\n");       for(int i=0;i<a;i++)         {         fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average);         fprintf(fp,"\r\n");         }       fclose(fp);       printf("信息保存成功!\n");       }   } void exit_student(void)//退出系統(tǒng)   {   exit(1);   } void print_help(void)//輸出幫助信息   {   printf("本系統(tǒng)所能容納的最大學(xué)生數(shù)為%d人\n學(xué)生信息保存在D盤根目錄下,保存文件為“學(xué)生信息.txt”。\n感謝使用!\n",N);   } void input_score1(void)//統(tǒng)計(jì)成績(jī)總函數(shù)   {   int c;   c=search_student2(iNumOfStu);   printf("學(xué)號(hào):%d\n",stu[c].number);   printf("姓名:%s\n",stu[c].name);   input_score3(c);   printf("新成績(jī)錄入成功!

    標(biāo)簽: c語(yǔ)言

    上傳時(shí)間: 2019-06-09

    上傳用戶:啊的撒旦

  • VIP專區(qū)-嵌入式/單片機(jī)編程源碼精選合集系列(125)

    VIP專區(qū)-嵌入式/單片機(jī)編程源碼精選合集系列(125)資源包含以下內(nèi)容:1. 介紹一個(gè)實(shí)用的PCB電路板.2. VC中的小控件的使用.3. 電子科技大學(xué)的嵌入式系統(tǒng)教程ppt.4. Altera的NIOS2SOPC平臺(tái)上的音樂(lè)播放的軟件模板。 Quartus 2版本5.0 Nios2 IDE版本5.0 硬件平臺(tái)自己根據(jù)軟件構(gòu)建.5. Altera公司的NIOS2SOPC平臺(tái)上的看門狗試驗(yàn)程序。 Quartus2軟件版本5.0 NIOS2IDE軟件版本5.0 硬件平臺(tái)根據(jù)軟件需求在Quartus2軟件中構(gòu)建.6. Altera公司的NIOS2SOPC平臺(tái)上的USB使用試驗(yàn)程序。 Quartus2軟件版本5.0 NIOS2IDE軟件版本5.0 硬件平臺(tái)根據(jù)軟件需求在Quartus2軟件中構(gòu)建。.7. ss9012在溫度控制中的應(yīng)用,含有ss9012的詳細(xì)資料.8. PIC單片機(jī)程序設(shè)計(jì)基礎(chǔ).9. SAA1064四位數(shù)碼管顯示驅(qū)動(dòng)芯片.10. 一個(gè)類windows的GUI.目前已有一些基本的控件和基本的圖形圖像處理能力..11. 51單片機(jī)學(xué)習(xí)的源代碼.12. 本人畢業(yè)設(shè)計(jì)原理圖,用protel99 se打開..13. I2C在CPLD上的模擬實(shí)現(xiàn)源程序,I2C在CPLD上的模擬實(shí)現(xiàn)源程序.14. PLC直接與現(xiàn)場(chǎng)控制層的檢測(cè)儀器儀表設(shè)備連接.15. freescale 9s12dp256單片機(jī)AD轉(zhuǎn)換原代碼.16. freescale 9s12c12dp256 單片機(jī)sci通信原代碼.17. freescale 9s12dp256單片機(jī)spi 通信原代碼.18. freescale 9s12dp256單片機(jī) 定時(shí)器原代碼.19. freescale 9s12dp256單片機(jī)pwm原代碼.20. 在DE2上顯示時(shí)間的程序.21. 本源碼已通過(guò)調(diào)試,里面有簡(jiǎn)單的分頻做法和點(diǎn)亮18個(gè)LED燈.22. M64+MF RC500 程序從初始配置 -- 尋卡 -- 防沖突 -- 選卡 -- 密碼驗(yàn)證 -- 讀卡 --- 寫卡.23. WINAVR下液晶3310的驅(qū)動(dòng) 1. PB4當(dāng)作RES的控制腳不妥當(dāng).24. ds18b20的代碼及結(jié)構(gòu)及其介紹 以及一些相關(guān)資料.25. 用與嵌入式系統(tǒng)的通用接口源碼包括:lcd ,led, com口,keyboard and so on.26. 基于c的電動(dòng)機(jī)保護(hù)程序.27. 三極管S8050D英文資料 管腳圖等.28. 三端穩(wěn)壓器78L05英文原始資料 管腳圖等.29. 1602LCD液晶顯示秒表程序 匯編源程序.30. uVision2入門教程.31. 安全嵌入式系統(tǒng)的設(shè)計(jì)技巧 The Use of Formal Methods.32. 2410的原理圖.33. 介紹了PIC18F系列的C語(yǔ)言應(yīng)用程序.34. 用在X86芯片的,嵌入式系統(tǒng)中的自動(dòng)更新程序.35. c51下FAT32文件系統(tǒng)的讀寫程序.36. 嵌入式實(shí)驗(yàn)指導(dǎo)書.37. arm中文指令集合.38. 使用8051單片機(jī)來(lái)實(shí)現(xiàn)電機(jī)的轉(zhuǎn)速的調(diào)節(jié)和液晶顯示.39. C語(yǔ)言嵌入式系統(tǒng)開發(fā).40. 智源公司的fic8120芯片的介紹.

    標(biāo)簽: 通信電子 線路

    上傳時(shí)間: 2013-04-15

    上傳用戶:eeworm

  • 寫一個(gè)程式將n個(gè)整數(shù)相加, 輸入檔的第一行是一個(gè)整數(shù)n, 接著n行每一行是一個(gè)整數(shù), 你的程式要將這些整數(shù)相加並將結(jié)果輸出, 其中每個(gè)整數(shù)為不超過(guò)50位數(shù)的十進(jìn)位數(shù)字

    寫一個(gè)程式將n個(gè)整數(shù)相加, 輸入檔的第一行是一個(gè)整數(shù)n, 接著n行每一行是一個(gè)整數(shù), 你的程式要將這些整數(shù)相加並將結(jié)果輸出, 其中每個(gè)整數(shù)為不超過(guò)50位數(shù)的十進(jìn)位數(shù)字

    標(biāo)簽: 程式

    上傳時(shí)間: 2015-05-03

    上傳用戶:佳期如夢(mèng)

  • 滙編語(yǔ)言的一個(gè)應(yīng)用實(shí)例﹐該程序的功能為將十六進(jìn)制數(shù)轉(zhuǎn)換成二制進(jìn)數(shù)。

    滙編語(yǔ)言的一個(gè)應(yīng)用實(shí)例﹐該程序的功能為將十六進(jìn)制數(shù)轉(zhuǎn)換成二制進(jìn)數(shù)。

    標(biāo)簽: 程序

    上傳時(shí)間: 2014-01-14

    上傳用戶:zhyiroy

  • 任意N進(jìn)制分頻器的標(biāo)準(zhǔn)VHDL代碼(原創(chuàng))

    任意N進(jìn)制分頻器的標(biāo)準(zhǔn)VHDL代碼(原創(chuàng))

    標(biāo)簽: VHDL N進(jìn)制 分頻器 代碼

    上傳時(shí)間: 2013-12-25

    上傳用戶:洛木卓

  • 以DSP為基礎(chǔ)之?dāng)?shù)位濾波器之設(shè)計(jì),本計(jì)劃即是利用數(shù)位訊號(hào)處理(DSP)來(lái)設(shè)計(jì)無(wú)限脈衝響應(yīng)(IIR)及有限脈衝響應(yīng)(FIR)濾波器。

    以DSP為基礎(chǔ)之?dāng)?shù)位濾波器之設(shè)計(jì),本計(jì)劃即是利用數(shù)位訊號(hào)處理(DSP)來(lái)設(shè)計(jì)無(wú)限脈衝響應(yīng)(IIR)及有限脈衝響應(yīng)(FIR)濾波器。

    標(biāo)簽: DSP IIR FIR 濾波器

    上傳時(shí)間: 2013-12-25

    上傳用戶:kristycreasy

  • 倒數(shù)計(jì)時(shí)器 提供時(shí)間到關(guān)機(jī)的功能 可自由設(shè)定是否關(guān)機(jī)或者提供警示

    倒數(shù)計(jì)時(shí)器 提供時(shí)間到關(guān)機(jī)的功能 可自由設(shè)定是否關(guān)機(jī)或者提供警示

    標(biāo)簽:

    上傳時(shí)間: 2016-02-02

    上傳用戶:lepoke

主站蜘蛛池模板: 巨野县| 子长县| 甘德县| 德州市| 子长县| 忻州市| 襄汾县| 通辽市| 阳东县| 泾川县| 中宁县| 柳林县| 色达县| 丰顺县| 彝良县| 楚雄市| 桦甸市| 德格县| 东源县| 通州区| 丰顺县| 蒲江县| 和顺县| 天台县| 治县。| 榆社县| 铁岭县| 漳州市| 临清市| 庆元县| 嫩江县| 宝坻区| 花莲市| 郴州市| 田阳县| 自治县| 黄平县| 霍林郭勒市| 同德县| 都匀市| 双江|