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

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

半導(dǎo)體激光

  • 本設計實際上是將被測模擬量轉換為數字量

    本設計實際上是將被測模擬量轉換為數字量,并進行實時數字顯示,主要由以下幾部分構成:量程轉換電路、AC-DC轉換電路、3位半A/D轉換單元電路、基準電源單元電路、譯碼驅動單元以及數碼管顯示單元。其中A/D轉換器選用三位半MC14433,基準電源選用MC1403,譯碼驅動器則MC14511,另加四個共陰極LED發光數碼管。

    標簽: 模擬量 數字量 轉換

    上傳時間: 2013-12-24

    上傳用戶:thinode

  • 成績查詢系統

    #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

    上傳用戶:啊的撒旦

  • 基于USB和FPGA技術的激光打標控制卡的研究與開發.rar

    激光打標是指利用高能量密度的激光束在物件表面作永久性標刻。激光打標以其“打標速度快、性能穩定、打標質量好”等優勢,獲得了日益廣泛的應用。傳統的激光打標系統一般是基于ISA總線或PCI總線的,運動控制卡必須插在計算機的PCI插槽內,且不支持熱捅拔,影響了控制卡的穩定性;以單片機為主控制器的激光打標控制卡雖然成本低、運行可靠,但由于其運算速度慢、存儲容量有限,限制了它的應用范圍。 運動控制卡是激光打標系統的核心組成部分。本文設計了一種新型的基于USB總線,以FPGA為主控單元的振鏡掃描式激光打標控制卡,它利用了USB總線高速、穩定、易用和FPGA資源豐富、處理能力強、易擴展等優點,將PC機強大的信息處理能力與運動控制卡的運動控制能力相結合,具有信息處理能力強、開放程度高、使用方便的特點。 本文首先介紹了激光打標的原理,激光打標技術的發展現狀以及激光打標系統的組成結構。在對USB總線技術作了簡要介紹后,詳細討論了激光打標控制卡的硬件電路設計,包括USB接口電路,FPGA主控單元電路,D/A單元電路,存儲器電路,I/O接口電路等。接著對USB接口單元的固件程序和FPGA中USB接口功能模塊、D/A寫控制功能模塊和SRAM讀寫控制功能模塊的程序做了詳細設計,通過軟硬件調試,控制卡實現了USB通信,輸出兩路模擬信號,SRAM數據讀寫,數字量輸入輸出等功能。

    標簽: FPGA USB 激光打標

    上傳時間: 2013-04-24

    上傳用戶:prczsf

  • 單片機應用技術選編1

    單片機應用技術選編(1) 第一章 單片機系統綜合應用技術 11.1 且使用 8098單片機的幾點體會 2 1.2 單片機的冷啟動與熱啟動 31.3 大容量動態存儲器在單片機系統中的應用111.4 MCS-51單片機系統中動態 RAM的刷新技巧141.5 MCS-51單片機系統中外RAM空間超64KB的擴展方法161.6 8031單片機P0口和P2口的應用開發 181.7 74LS164在 8031單片機中的兩種用法261.8 用于 8031單片機的快速I/O接口281.9 MCS-51定時器定時常數初值的精確設定法301.10 8253的翻轉問題及 MC6840的替代方法321.11 MCS-51單片機外部中斷源的擴展設計351.12 MCS-51單片機多外中斷擴展方法401.13 用優先權編碼器74LS348擴展51系列單片機的外中斷源421.14 用優先權編碼器74LS148擴展51系列單片機的外中斷源471.15 8031單片機與 BG5119A漢字庫的接口方法521.16 可背插 SRAM的日歷時鐘 DS1216及其應用551.17 實時日歷時鐘集成電路MSM5832及其時序601.18 實時日歷時鐘集成電路MSM5832的接口技術631.19 實時時鐘/日歷芯片MC146818及其應用671.20 與 SICE仿真器通訊的IBM-PC機通訊程序的改進741.21 代碼形式參數匯編子程序的應用821.22 單片機應用系統中的查表程序設計861.23 用狀態綜合法設計鍵盤監控程序901.24 單片機系統程序的加密技術961.25 MCS-96單片機程序保密的幾種方法1001.26 GAL輸出宏單元原理及使用105 1.27 通用陣列邏輯 GAL應用于步進電機控制實例110 第二章 傳感器與前向通道接口技術1172.1 集成溫度傳感器 LM134及其應用1182.2 AD590集成溫度一電流傳感器原理及應用1242.3 集成溫度傳感器 AD590的應用1292.4 GS-800和 GS-130可燃氣體傳感器1332.5 集成化霍爾開關傳感器1352.6 一種新穎實用的氧氣/頻率轉換電路1392.7 MCS-51單片機與數字式溫度傳感器的接口設計1422.8 數字式溫度傳感器 SWC與 8031的接口及應用1452.9 低成本高精度壓力傳感器微機接口設計1472.10 峰值檢測電路原理及應用1512.11 用 LF398制作的實用峰值和谷值保持電路1532.12 AD637集成真有效值轉換器1562.13 傳感器信號調理模塊 ZB311622.14 2B31模塊在稱重智能儀表中的應用1662.15 傳感器信號調理模塊 2B30/2B31及其應用1692.16 高精度光纖位移測量系統的電路設計1752.17 集成電壓一電流轉換器 XTR100的工作原理及應用1792.18 傳感器信號變送器 F693及其應用1852.19 一種用兩片 VFC32構成的隔離放大器電路1912.20 實用線性隔離放大器1922.21 電橋放大電路中 7650的一些應用問題1942.22 A/D轉換器 ICL7109的應用研究1962.23 5G14433模數轉換器的啟停控制2002.24 ADC1130模數轉換器及其使用2042.25 16位 A/D轉換器 ADC1143及其與 80C31單片機的接口2082.26 串行 I/O D/A A/D轉換器與單片機的接口2132.27 單片機應用系統中的數字化傳感器接口技術2162.28 ADVFC32 A/D轉換接口技術2202.29 V/F和 F/V轉換器 TD650原理與應用2242.30 AD650與 MC-51單片機的接口技術2302.31 利用VCO電路與單片機接口實現A/D轉換2352.32 LM2907/2917系列F/V變換器在汽車檢測中的應用2382.33 單信號多通道輸入法改善 A/D轉換器性能2412.34 用多片 A們轉換芯片提高 A/D轉換速度2452.35 實時數控增益調整與浮點 ADC電路2492.36 電荷耦合器件的單片機驅動2532.37 電荷耦合器件的結構原理與單片機的軟件定時驅動2582.38 利用模數轉換器提高轉換信號的線性度2622.39 利用微型機解決轉換中的非線性問題2682.40 利用非線性曲線存儲實現線性化的方法2702.41 輸出無非線性誤差的可變電壓源單臂電橋274 第三章 控制系統與后向通道接口技術2793.1 DAC1231與單片機 8031的接口技術2803.2 單路及多路 D八的光電隔離接口技術2843.3 光電隔離高壓驅動器2903.4 TRAIC型光耦在 8031后向通道接口的應用分析2913.5 GD-L型光控晶閘管輸出光耦合器2963.6 用于晶閘管過零觸發的幾種方式3003.7 固態繼電器3043.8 固態繼電器在交流電子開關中的應用3083.9 JCG型參數固態繼電器3123.10 JCG型參數固態繼電器的應用315 3.11 介紹幾種適用于印刷電路板的超小型電磁繼電器3193.12 用TWH8751集成電路構成微機控制的三步進電機驅動電源3223.13 3-4相步進電機控制器 5G87133253.14 5G0602報警電路及應用3283.15 兩種新型溫控光控兀的應用330 第四章 人機對話通道接口技術3334.1 單片機鍵盤接口設計3344.2 由電話機集成電路構成的單片機鍵盤接口電路3364.3 用 GAL設計的一種編碼鍵盤接口3384.4 用 CMOS電路構成的非編碼觸摸鍵盤3424.5 設計薄膜開關應注意的一些問題3454.6 觸摸式電子開關集成電路 5G673及其應用3504.7 8279用于撥碼盤及顯示器的接口設計3544.8 LED數碼管的構造與特點3584.9 LED數碼管的集成驅動器及配套器件3624.10 8279芯片的顯示接口分析及32位數碼管顯示驅動電路設計366  4.11 用三端可調穩壓塊代替LED顯示器的限流電阻3704.12 液晶顯示器件的構造與特點3714.13 LCD七段顯示器與單片機的接口3744.14 液晶顯示器與單片機的接口技術3764.15 可編程LCD控制驅動器PPD72253814.16 微機總線兼容的四位 LCD驅動電路 TSC7211AM3874.17 使用8255的雙極性歸零脈沖驅動液晶顯示器接口3914.18 DMC16230型 LCD顯示模塊的接口技術3954.19 點陣式液晶顯示器原理及應用4034.20 實用液晶顯示電路4094.21 8031控制的 CRT顯示控制接口4144.22 用 8031控制多臺彩色顯示器的實現方法4194.23 高級語言處理器--T6668的結構與典型電路4234.24 延長 T6668語言電路錄放時間的方法4294.25 T6668高級語音開發站4324.26 語言處理器 T6668在電話報警系統中的應用4354.27 新型語音處理器YYH16439 第五章 網絡、通訊控制與多機系統4415.1 IBM-PC/XT和單片機通訊系統的設計4425.2 IBM-PC/XT微機與單片機的兩種通訊接口4485.3 MCS-51單片機與 IBMPC微機的串行通訊4525.4 中央控制端與 MCS-51單片機間的數據通訊4595.5 IBMPC機與 MCS-51單片機的快速數據通訊4665.6 8031單片機與 PC-1500計算機的通訊4735.7 多片 MCS-51系統的一種串行通訊方式4775.8 多單片機處理系統并行通訊的實現4815.9 半雙工遠距離電流環多機通訊接口電路4855.10 多微機系統共享 RAM電路4905.11 串行通訊中的波特率設置4925.12 在MCS-51單片機的串行通訊中實現波特率的自動整定4965.13 J274和 J275在微機分布式測控系統中的應用5005.14 單電纜傳送雙向數據5045.15 新穎的多路遙控兀編譯碼器5055.16 DTMF在單片機無線數據通訊中的應用5085.17 MCS-8031單片機在紅外遙控裝置中的應用5155.18 一種實用光纖數字遙測系統5185.19 智能儀表通訊系統中一種冗余通道的設計5245.20 EIARS-232-C接口使用中的幾個問題528 第六章 電源、電源變換與電源監視5316.1 電源擴展電路5326.2 一種簡單的直流三倍壓電路533 6.3 直流電源變換集成電路5356.4 直流電壓變換器ICL7660的應用5376.5 一種廉價高精密基準電壓源5406.6 精密可調基準電壓源及其應用5416.7 引腳可編程精密基準電壓源AD584及其應用5496.8 幾種新型恒流源集成電路5536.9 CW334三端可調恒流源及應用5576.10 電源電壓監視用芯片TL7705CP簡介5606.11 電源電壓監視用芯片TL7700簡介5646.12 WMS7705B電源監視用芯片簡介5676.13 具有HMOS結構的MCS-51系列單片機提供后備電源的方法570 第七章 系統抗于擾技術5757.1 微型計算機系統的抗干擾措施5767.2 計算機應用系統抗干擾問題5797.3 微機在工業應用中的抗干擾措施5867.4 利用電源監視TL7705芯片的抗電源于擾新方法5917.5 利用電源監視芯片WMS7705的抗電源干擾新方法5947.6 具有浪涌抑制能力的 TVP 6017.7 瞬變電壓抑制M極管TVP的特性及應用6047.8 單片機實時控制軟件抗干擾編程方法的探討6077.9 一種簡單實用的微機死機自復位抗干擾技術6107.10 單片機程序的監視保護6127.11 軟件 WATCHDOG系統615 7.12 一種實用的"看門狗"電路6187.13 高電壓下測量系統的抗干擾措施619 第八章 應用實例6218.1 單片機在多功能函數發生器中的應用6228.2 單片機波形發生器6298.3 單片機控制的調幅波發生器6338.4 用 8031單片機解調時統信號6368.5 具有 114DB動態范圍的浮點數據采集系統6418.6 電熱恒溫箱單片微機控制系統6468.7 智能 I一、C丑測試儀的原理及設計6528.8 采用 LMS算法的單片機數字交流電橋6568.9 單片微機的數字相位測試儀6598.10 單片機的氣體流量測量6628.11 單片機的相關流量儀6688.12 723型可見分光光度計6758.13 多功能微電腦電子秤6798.14 智能路面回彈檢測儀6838.15 使用 CCD的單片機動態布面檢測系統6878.16 使用 CCD的單片機激光衍射測徑系統6908.17 使用 CCD的單片機動態線徑測量儀6958.18 使用CCD的單片機中型熱軋圓鋼直徑檢測儀7018.19 用 MCS-51單片微機實現織布機的監測7058.20 單片機在工頻參量測試中的應用7098.21 單片機 8098在直線電機控制中的應用715?

    標簽: 單片機 應用技術

    上傳時間: 2014-12-28

    上傳用戶:liufei

  • 新型半主動激光制導實物仿真系統設計與實現

    摘要: 設計并實現了一種激光半主動制導實物仿真系統,系統主要包括光電探測、信號處理和伺服部分。介紹了系統的工作原理以及主要電路的設計。該系統體積小,操作方便,控制靈活等優點。實際應用結果表明,該仿真系統對模擬激光目標的跟蹤穩定,具有良好的實時性和較強的實用性。

    標簽: 激光制導 實物 仿真系統設計

    上傳時間: 2014-01-08

    上傳用戶:taox

  • 利用MSP430 單片機的一般 I/O口進行的數字量的采集 利用A/D采集通道實現模擬量到數字量的轉化

    利用MSP430 單片機的一般 I/O口進行的數字量的采集 利用A/D采集通道實現模擬量到數字量的轉化

    標簽: MSP 430 數字量 采集

    上傳時間: 2013-12-21

    上傳用戶:古谷仁美

  • 有趣的文字鼠標跟隨,l o a d i n g字母組成

    有趣的文字鼠標跟隨,l o a d i n g字母組成,在打開頁面等待的時候可以用

    標簽: 鼠標 字母

    上傳時間: 2013-12-21

    上傳用戶:2525775

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

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

    標簽: 實驗 320C INT2 TMS

    上傳時間: 2014-02-16

    上傳用戶:縹緲

  • 含t h r e a d x,u c o s 的b s p

    含t h r e a d x,u c o s 的b s p

    標簽:

    上傳時間: 2015-06-29

    上傳用戶:xfbs821

主站蜘蛛池模板: 军事| 米脂县| 舞阳县| 酒泉市| 丹凤县| 武定县| 基隆市| 和平县| 准格尔旗| 浙江省| 旺苍县| 洛南县| 如皋市| 台江县| 云浮市| 宜昌市| 左云县| 文安县| 措勤县| 天柱县| 铅山县| 安国市| 西安市| 鸡东县| 武城县| 新平| 尉氏县| 金乡县| 绥滨县| 额尔古纳市| 织金县| 东港市| 江源县| 新昌县| 惠州市| 淳安县| 黄石市| 察哈| 乐陵市| 宁乡县| 平湖市|