學生基本信息管理系統(tǒng)(LINUX下)_第1頁
學生基本信息管理系統(tǒng)(LINUX下)_第2頁
學生基本信息管理系統(tǒng)(LINUX下)_第3頁
學生基本信息管理系統(tǒng)(LINUX下)_第4頁
學生基本信息管理系統(tǒng)(LINUX下)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 學習并分別使用標準C的文件操作函數(shù)和Linux的系統(tǒng)調(diào)用創(chuàng)建一個對學生基本信息進行操作(插入、修改和刪除)的C程序,學生基本信息以結(jié)構(gòu)體的形式存儲在文件 #include<stdio.h>#include<unistd.h>#include<string.h>#include<stdlib.h>#include<time.h>struct stu_info      char stu_num12;     char name10; &

2、#160;   char sex;/*0為女生,1為男生*/     char mobile_phone12;struct stu_info student;unsigned int number;struct stu_info stu100;FILE *in;FILE *out;int len;void inputstu();void updatestu();void deletestu();void displaystu();void commanddisp()    printf("-n&

3、quot;);      printf("|-學生基本信息管理-|n");     printf("|-1.基本信息插入.-2.基本信息修改-|n");     printf("|-3.基本信息刪除.-4.基本信息顯示-|n");     printf("|-r.初始化(第一次使用時用!慎用)-q.退出-|n");   

4、0; printf("|-請輸入你的選擇:-|n");     printf("-n");void main()    commanddisp();     char ch;     while(1)              do     

5、;         ch=getchar();         while(ch='n');         if(ch='q')return;         switch(ch)     

6、60;            case '1':              inputstu();              break;        

7、 case '2':              updatestu();              break;         case '3':      

8、0;       deletestu();              break;         case '4':              displaystu(); 

9、             break;         case 'r':              printf("ninit student tablen");      

10、;        if(out=fopen("c.doc","w")=NULL) return;              number=0;              fwrite(&number,sizeof(unsi

11、gned int),1,out);              fflush(out);              fclose(out);              break;   

12、60;     default:              break;                  printf("please enter any key to continue");    

13、0;    getchar();         getchar();         system("clear");         commanddisp();     void inputstu()     printf(

14、"n-請輸入學生信息-n");       char p='y'     while(p='y'|p='Y')              memset(&student,0,sizeof(student);         print

15、f("學號:");         scanf("%s",student.stu_num);         printf("姓名:");         scanf("%s",);      &

16、#160;  printf("性別0是女,1是男:");         do              student.sex=getchar();         while(student.sex='n');    &

17、#160;           printf("手機號:");         scanf("%s",student.mobile_phone);         len=sizeof(struct stu_info);       

18、60; if(out=fopen("c.doc","r+")=NULL) return;         fread(&number,sizeof(unsigned int),1,out);         number+;         fseek(out,0L,SEEK_SET);  

19、       fwrite(&number,sizeof(unsigned int),1,out);         fflush(out);         fseek(out,0L,SEEK_END);         fwrite(&student,len,1,out);

20、60;        fflush(out);         fclose(out);         printf("是否繼續(xù)輸入YNn");         fflush(stdin);      

21、60;  do              p=getchar();         while(p='n');     void updatestu()     printf("n-學生信息修改-n");     print

22、f("請輸入修改學生的學號:");     memset(&student,0,sizeof(student);     scanf("%s",student.stu_num);     printf("姓名:");     scanf("%s",);     printf("

23、性別0是女,1是男:");     do         student.sex=getchar();     while(student.sex='n');            printf("手機號:");     scanf("%s&q

24、uot;,student.mobile_phone);     len=sizeof(struct stu_info);     in=fopen("c.doc","r+");     fread(&number,sizeof(unsigned int),1,in);     unsigned int j;     long kk; 

25、60;   for(j=0;j<number;j+)              fread(&stu0,len,1,in);         if(strcmp(student.stu_num,stu0.stu_num)=0)            

26、60;         kk=len;              fseek(in,-kk,SEEK_CUR);              fwrite(&student,len,1,in);     

27、         break;                   fflush(in);     fclose(in);     if(j=number)printf("沒有這條記錄n");void deletestu()   

28、  printf("n-學生信息刪除-n");         in=fopen("c.doc","r");     fread(&number,sizeof(unsigned int),1,in);     memset(stu,0,sizeof(stu);     len=sizeof(struct stu_info);

29、60;    fread(stu,len,number,in);        unsigned int i;     char f;     while(1)              printf("請輸入刪除學生的學號:");     

30、;    char stu_num12;         memset(stu_num,0,sizeof(stu_num);         fflush(stdin);         scanf("%s",stu_num);       

31、;  for(i=0;i<number;i+)                       if(strcmp(stu_num,stui.stu_num)=0)break;             if(i=number) printf("沒有

32、這條記錄n");            else                        number-;              for(;i<

33、number;i+)                                 strcpy(stui.stu_num,stui+1.stu_num);           

34、        strcpy(,stui+1.name);                   stui.sex=stui+1.sex;                &#

35、160;  strcpy(stui.mobile_phone,stui+1.mobile_phone);                                printf("是否繼續(xù)刪除YNn");      

36、   fflush(stdin);         do              f=getchar();         while(f='n');         if(f!='y'&&f!='Y')break;          fclose(in);     ou

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論