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

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

自引導(dǎo)程序

  • 成績查詢系統

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

    標簽: 成績查詢系統

    上傳時間: 2019-06-08

    上傳用戶:啊的撒旦

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

    標簽: c語言

    上傳時間: 2019-06-09

    上傳用戶:啊的撒旦

  • 單片機控制的頻率跟蹤超聲波電源的研究

    超聲波換能器由于負載的變化以及外界環境的變化等因素,導致超聲波電源的輸出頻率與諧振頻率不匹配,從而使清洗效果不佳。超聲波電源是超聲清洗機的核心部分,為實現其高效穩定的工作,需要對其工作頻率進行自動跟蹤控制。為此,本文設計了基于單片機PIC16F886為控制核心的超聲波電源,其額定輸出功率為600W,工作頻率為20kHz,并實現了對頻率的實時跟蹤控制。主要研究內容如下:  首先,根據超聲波電源的性能指標要求,設計了超聲波電源主電路系統,主電路系統由整流濾波電路、逆變電路、匹配電路等單元組成,逆變電路采用全橋逆變拓撲結構,文中對主電路系統進行了詳細分析與設計,并采用Multisim仿真軟件對主電路系統各個部分進行仿真。  其次,設計了超聲波電源頻率跟蹤的控制方案,該控制方案采用鎖相環頻率跟蹤的控制思路并結合PID控制方法。為此設計了相應的控制軟件,采用C語言編寫主程序、A/D轉換程序、PID控制程序等。  最后,以PIC16F866單片機芯片為控制核心,設計了超聲波電源控制系統,主要包括采樣電路、驅動電路、單片機外圍電路等,分析了其工作原理。并采用Proteus軟件對控制系統進行仿真。仿真結果表明,所設計的超聲波電源控制系統能實現頻率自動跟蹤,與超聲波換能器相匹配,工作在諧振狀態,達到了設計要求。

    標簽: 單片機 超聲波電源

    上傳時間: 2022-06-11

    上傳用戶:jason_vip1

  • 基于AT89C51單片機的轉速控制系統設計與應用

      隨著科學技術的發展,工業控制領域的自動化程度越來越高,工業控制對精度的要求也越來越高。電動機作為工業生產主要的動力源,對其轉速的測量以及控制的研究顯得十分有意義。電力電子技術、計算機技術、自動控制技術逐漸應用于電動機的轉速控制系統中,使得電動機轉速控制系統的控制精度得以不斷提高。本文的設計是基于AT89C51單片機的交流電動機轉速控制系統,以變頻調速技術為核心,實現對三相交流異步電動機轉速的精確控制和測量。文中主要研究了變頻調速技術的相關原理,并以三相交流異步電動機的轉速測量和控制為實例,設計基于AT89C51單片機的三相交流異電動機轉速控制系統,通過仿真得到驗證,并在此基礎上開展抗干擾措施的研究。本文主要研究的內容如下:   第一章介紹課題研究的意義及現狀,提出課題研究的內容及目標,最后給出了課題研究的技術路線。   第二章闡述基于AT89C51單片機的轉速控制系統的原理,并根據該原理分別提出硬件系統、軟件系統這兩個系統的設計方案。   第三章對轉速控制系統的硬件系統進行設計。主要從單片機、電源模塊、信號采集模塊、顯示模塊、按鍵模塊這幾個方面進行設計,然后作相關的說明。   第四章對轉速控制系統的軟件系統進行詳細的設計。主要從編寫語言的選擇、AT89C51單片機資源分配、控制單元程序、初始化程序、A/D轉換程序、按鍵程序、顯示程序這幾個方面進行設計,并作相關的說明。   第五章對前面設計的轉速控制系統進行仿真驗證。構建硬件系統,然后再對軟件系統的程序完成編譯以及調試后,加載給硬件系統,協同仿真驗證基于AT89C51單片機的轉速控制系統設計的可實現性,然后對該系統的應用條件、范圍做出說明。   第六章對設計好的轉速控制系統進行抗干擾技術的分析研究。先分析干擾可能的來源,然后在前面分析的基礎上從硬件、軟件兩個系統,進行抗干擾技術措施的研究。   文章的最后對論文進行總結,并對未來的研究工作,給出展望。

    標簽: at89c51 單片機 轉速控制系統

    上傳時間: 2022-06-11

    上傳用戶:wangshoupeng199

  • PSSE概述及其基本操作使用

    PSS/E功能特點·輸入數據方式及與其他程序數據文件共享的方便性·程序模型庫包括發電機模型、勵磁系統模型、調速器模型、HVDC模型、FACTS模型、負荷模型等的完整性·分析計算功能的多樣性·用戶自定義計算順序與用戶自定義計算功能·用戶自定義模型功能和程序接口功能·計算方法的透明性與文檔的完整性·國際交流的方便性基本功能介紹>潮流計算(Load Flow)>動態仿真(Dynamic Simulation)>批處理功能>計算和仿真結果輸出>潮流計算模塊(psslf4)>動態仿真模塊(pssds4)>仿真結果輸出模塊(pssplt)DOS模式啟動>數據文件建立>潮流計算啟動和數據導入>數據查詢和修改》數據檢查>潮流計算>結果輸出和數據保存◆PSS/E的可視化和圖形化◆潮流結果文件的處理(動態仿真準備)

    標簽: psse

    上傳時間: 2022-07-01

    上傳用戶:

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

    VIP專區-嵌入式/單片機編程源碼精選合集系列(4)資源包含以下內容:1. I2C接口設計文檔.2. 非常有用的自抗擾pid控制器程序。搞控制的可以看看。.3. 卡爾曼濾波在化工傳熱過程中的應用.4. 交通燈模擬控制器.5. uc/os操作系統的文件系統源碼.6. 999秒的定時器.7. 24CXX的讀寫操作.8. 12864LCM的應用實例.9. 開發源代碼的CPU卡的COS源程序。.10. 匯編語言編寫的搶答器設計報告.11. 用匯編語言編寫的步進電機的課程設計.12. 微型計算機接口槍答器課程設計.13. tcp/ip 協議的源碼.14. 2500ad 的6502 編譯器資料.15. 6502 的編譯器的源碼和文檔.16. cc65 的編譯器文檔.17. 一個漢字顯示的例子(嵌入式).18. at29c040 card 讀寫程序源碼.19. 嵌入式的命令行解釋器.20. 研華數據采集卡PCI1713,PCI1720,PCL730測試程序.21. 在嵌入式系統DeltaSYSTEM中實現PING主機.22. 機器人的實時控制。VxWork,Windows系統在機器人控制方面的應用。鏈接來自 http://www.automationit.hut.fi.23. pci驅動程序的源代碼.24. 在大型通信系統(機架插板式)中多塊單板通過TDM總線.25. 嵌入式TCPIP協議.26. rtLinux源代碼.27. pid學習資料代碼.28. 多線程管理器源代碼thread manager,VC開發的.29. s3c44b0的bootload程序.30. 在ADS和SDT上都可運行的S3C44B0的源程序.31. LCD的源代碼.32. 在GNU上開發的應用程序源代碼.33. 在線編輯WORD文檔.34. 實時多任務系統內核分析.35. PLD實驗參考源程序.36. 世界各國電話來電顯示標準.37. 第十三屆全國電源技術年會論文集錦.38. A CCITT-16 CRC calculator. The source contains both the calculated (smaller but slower) version, and.39. 8051 RC5 Decoder A simple RC5 decoder written in C . Written to emulate a SAA3049..40. 開源嵌入式數據庫Berkeley DB-4.2.52.

    標簽: EWB 數字電子技術 仿真實驗

    上傳時間: 2013-04-15

    上傳用戶:eeworm

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

    VIP專區-嵌入式/單片機編程源碼精選合集系列(36)資源包含以下內容:1. C51 I2C 驅動程序 含頭文件.2. arm芯 ucos 下的開發框架.3. c8051f***的程序源代碼.4. 新華龍單片機的flash用法.5. 用C8051F300設計鋰離子電池充電器的解決方案.6. c8051f系列單片機 用過采樣和求均值提高ADC分辨率.7. C6000指令集 是對C6000指令集的文檔.8. VxWorks 編程手冊 VxWorks 編程手冊.9. proteus 6.7及其破解(絕對好用).10. iic總線資料.11. 手機游戲禮包包 原理圖采用OrCad軟件或PowerPCB軟件打開 好玩的很  快來試試吧.12. 紅外測溫計 紅外線測溫   自動化設計 原理圖采用OrCad軟件或PowerPCB軟件打開 很完美.13. 9智能機器人禮包 智能機器人  單片機實現   功能齊全  運動流暢.14. 哈哈!終于找到了最新版本的UCGUI! 增加了不少的功能.15. Nios II是一個用戶可配置的通用RISC嵌入式處理器,這個文檔詳細介紹這個處理器的用法.16. 這是一個c語言寫的a/d轉換程序。利用i2c總線實現對24c02的存和取.17. 學DSP時.18. 漢字液晶子程 液晶屏分為4行*12列漢字.19. 這是一個c語言描述的8位led顯示的源代碼.20. We demonstrate a method for encoding and decoding the [24,12,8] extended binary Golay code using a s.21. Training embedded apps to process speech may be as easy as finding the right 8-bit micro. Don t let.22. The CC1000 RF transceiver is very easy to interface with a microcontroller. The chip is configured.23. One of the most important issues affecting the implementation of microcontroller software deals wi.24. AVR單片機開發中.25. 作基于日立公司superh系列微處理器嵌入式操作系統bootloader源代碼.26. touchsceen_test ├─ main.c C語言主源文件 ├─ AscII6x8.c Ascii字符6x8點陣顯示格式數據 ├─ lcd.c LCD顯示函數源文件 ├─.27. iic_test ├─ main.c C語言主源文件 ├─ iic.c IIC總線操作和24C040擦寫函數源文件 └─ iic.h IIC總線操作和24C040寫定義頭文件.28. Nexperia系統聲音實現的源碼.29. 89C516RD+的兩個AD轉換程序,89C51是22.1184MHZ,有64KB Flash 256B(DataRAM)+1024B(Ext.RAM)的性價比很高的MCU.30. 網上收集的VC多線程開發、嵌入式開發文檔.31. ucos-2在lpc2100上的移制例子。.32. mcf5307實驗源代碼.33. CPLD對DUSH的讀寫控制,LINUX下運行.解壓即可..34. HART協議由Rosemount公司開發且已向每個使用者開放HART協議采用標準的Bell 202頻移鍵控信號以1200波特通信以低電平加載于4mA~20mA模擬信號上.35. 中文MODBUS協議(完整版)涵蓋協議基本內容。不用我多說了吧!自己看好了。.36. μC_OS-II在Nios上的移植(共同學習ucosII).37. SST28F040讀寫源程序,C語言編寫,方便移植.38. 基于ARM 的PDA拼音輸入法源程序,c語言編寫,方便移植.39. Cypress公司的USB芯片開發資料.40. at91 sam 系列arm7單片機程序下工具.

    標簽: 自動變速器

    上傳時間: 2013-06-18

    上傳用戶:eeworm

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

    VIP專區-嵌入式/單片機編程源碼精選合集系列(79)資源包含以下內容:1. 超好的GPS程序.2. 帶字庫的RA8803的驅動程序.3. 三星S6B33B2驅動TFT彩色LCD的簡單示例程序.4. ST7549的驅動LCD的程序,ST7549是使用的I2C協議的LCD驅動..5. AVRGCC編寫的很好用的串口通訊源程序.6. ucos-ii移植到samsungarm2410上的源碼.7. arm92410evc程序源代碼三星版子上調試過.8. 用于計算機中心的PC機管理,通過WMI獲取本單位PC的名稱,IP地址,網卡地址,硬盤序列號,CPU序列號,硬盤大小,內存大小等信息.然后轉換成EXCEL表格發送到管理員的EMAIL中..9. 我寫的atmega16驅動的nrf24l01程序.10. bsp介紹資料.11. 從朋友處拷貝的avr硬盤控制源碼.12. AVRX實時操作無線遙控LED變化控制完整源碼.13. 嵌入式開發,基于at91rm9200的i2c驅動.14. 12864的C語言版.15. DSP2407電路板最好用的測試程序 本人參考張雄偉老師的書籍改寫而成 非常方便DSP調試使用.16. MATLAB程序關于數字信號處理的算法實現.17. 超好的嵌入式操作系統學習代碼.18. 詳細說明如何用c和c++語言在嵌入式開發環境中進行編程.19. TI的MCU——MSP430F149與圖形點陣控制芯片T6963的接口程序及相關的函數介紹.20. Nordic 公司 nRF24E1 芯片程序.21. Altera原版MAXII開發板原理圖(EPM1270F256C5).22. 這個文檔里面含有了很多基于軟核處理器NIOSII開發的文章.23. 本原碼用于實現對mp3的解碼功能.24. C51 入門的視頻教程很是經典.25. ARM MP3的解碼程序.內容介紹比較詳細.是一個比較好的例程..26. lcd12864f的程序范例.27. 14094串并轉換靜態顯示LED 14094串并轉換靜態顯示LED.28. 串口打印機程序范例 串口打印機程序范例.29. OCMJ4*8lcd液晶程序(匯編) OCMJ4*8lcd液晶程序(匯編).30. AD7788 16bit A/D轉換程序 AD7788 16bit A/D轉換程序.31. TMS320F2407的DSP最小系統開發板的電路原理圖及相關說明..32. FPGA/CPLD設計指導準則。如基本設計原則.33. 這是一個用PLX9052PCI控制芯片橋接PCI的示范程序..34. 串口測試程序.35. - file system ISO9660 iso9660.c iso9660.h - file system FAT12/16 fat.c fat.h - file sy.36. at89s52+rc500,射頻感應模塊的DEMO程序.37. EZ-USB Mouse的源碼 EZ-USB Mouse的源碼.38. 這是一個i2c總線在2051中的一個實驗程序。.39. 西安大唐電訊的經典內部培訓資料.40. S3C44B0X開發實例,希望對大家有所幫助.

    標簽: 五金手冊

    上傳時間: 2013-08-02

    上傳用戶:eeworm

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

    VIP專區-嵌入式/單片機編程源碼精選合集系列(151)資源包含以下內容:1. 基于TI DSP/BIOS的usb網卡的實現.2. 一個printf的實現源代碼.3. mp3的設計與實現.4. 51單片機雙機通訊程序.5. 頻率發生器.6. ISO-HDLC協議中文版。HDLC是很繁瑣的一個協議.7. 基于PIC18F2580實現的 電壓A/D轉換程序 結果送液晶1602顯示.8. 基于IPPP嵌入式音頻解碼器的設計與優化.9. 石器時代3.0源代碼 2008.08.27最新版 完全可編譯開服!.10. Keil C51 8051 demo kit.11. 點菜系統 內置很多功能.12. 較為全面的IAR AVR的PWM程序設計.13. IAR avr 的串口程序.14. 麥迪工作室51開發板溫度顯示的驅動代碼.15. S3C2440處理器上的ADC程序.16. S3C2440處理器上的CF卡讀寫程序.17. 嵌入式實時操作系統VxWorks及其開發環境Tornado pdg格式.18. velocity官方工具包 包括各種JAR包 示例 文檔等.19. 44B0 bootloader分析 適合初學者.20. 12,14,16點陣漢字顯示文件 12,14,16點陣漢字顯示文件.21. proteus中PIC單片機仿真庫文件。.22. 典型的PID算法.23. 一個用嵌入c寫的萬年歷程序.24. 周立功公司的SOPC源代碼.25. NIOS和IDE的相關使用的實踐例子.26. 使用NIOS的一些啟動位置的心得.27. 手把手教你學單片機(實驗與指令教程)推薦!.28. 我們學校設計的自行車多功能測速儀.29. 430控制12887源程序.30. PCI中斷分析.講述PCI中斷原理.31. PCI Tutorial Basic Bus Architecture Sample Transaction – PIO Sample Transaction – DMA PCI Signal.32. 就是個譯碼器.33. I2C 總線規范 I2C 總線的IC 不只幫助了設計者它們也使設備廠商得到很多益處.34. 此文檔是關于I2C設備驅動的開發指導文檔.35. 從大量的wince源代碼中剝離出的fat文件系統源代碼.移植性非常高. 里面帶有source i.36. 基于XSCALE架構處理器WinCE系統BSP開發.37. 設計MFRC500的匹配電路和天線的應用指南 對RC500天線設置非常有幫助的!.38. 優龍fs2410p實驗箱的sdk文件.39. 手機顯示屏的初始化原代碼,包括顯示一些單色畫面,平臺是KEIL C51.40. FX1N三菱plc與pc通信的一個很好的例子.

    標簽: Core 1.0 藍牙系統 技術規范

    上傳時間: 2013-04-15

    上傳用戶:eeworm

  • TMS320C54X DSP 實驗指導程序 實驗一 常用指令實驗 實驗二 數據存儲實驗 實驗三 I/O實驗 實驗四 定時器實驗 實驗五 INT2中斷實驗 實驗六 A/D轉換實驗 實驗七

    TMS320C54X DSP 實驗指導程序 實驗一 常用指令實驗 實驗二 數據存儲實驗 實驗三 I/O實驗 實驗四 定時器實驗 實驗五 INT2中斷實驗 實驗六 A/D轉換實驗 實驗七 D/A轉換實驗 實驗八 AD/DA綜合實驗

    標簽: 實驗 320C INT2 TMS

    上傳時間: 2014-02-16

    上傳用戶:縹緲

主站蜘蛛池模板: 双柏县| 淮阳县| 绩溪县| 龙海市| 潞城市| 北辰区| 大悟县| 孟连| 壤塘县| 黑龙江省| 缙云县| 南部县| 盐源县| 永春县| 安阳县| 修文县| 元谋县| 桃源县| 黎平县| 平乡县| 天等县| 朝阳区| 苍溪县| 泰安市| 宝清县| 江油市| 长泰县| 闸北区| 德兴市| 奉化市| 忻城县| 绥德县| 桐乡市| 宣威市| 台江县| 通化县| 白朗县| 如东县| 平定县| 临颍县| 厦门市|