1樓:匿名使用者
簡單寫了一個輸入及顯示程式。
預設#define debug 0,定義這個是為了除錯用,免得每次都要輸入資料,麻煩;想要除錯,設debug成1就好。
具體**示例:
#include
#include
#include
#define len sizeof(struct student)
#define debug 0
struct subject ;
struct student
;struct student *insertonestudentmessage(struct student *header)
struct student *inputmorestudentmessages(struct student *header)
p = p->next;
}if(p == null) else
}int ***parebytype(struct student *a, struct student *b, int type)
return 0;
}struct student *sortbyclass(struct student *header, int type)
temp = pre = p = header;
next = p->next;
while(next != null) else
} else
}temp = next;
next = next->next;
}return header;
}void printinfo()
void printall(struct student *header)
}struct student * makestudentmessagefordebug(struct student *header),,,
,,};int n = sizeof(message)/sizeof(struct student);
int i;
struct student *pre,*p;
header = pre = p = (struct student*)malloc(len);
for(i=0;iid = message[i].id;
memcpy(p->name, message[i].name, strlen(message[i].name)+1);
memcpy(p->***, message[i].***, strlen(message[i].***)+1);
p->birthday = message[i].birthday;
memcpy(p->grade, message[i].grade, strlen(message[i].grade)+1);
p->report.math = message[i].report.math;
p->report.english = message[i].report.english;
p->report.chinese = message[i].report.chinese;
p->report.chemistry = message[i].report.chemistry;
p->report.physics = message[i].report.physics;
pre = p;
p = (struct student*)malloc(len);
pre->next = p;
}pre->next = null;
return header;
}int main()
while(flag == 0)
}return 0;}
2樓:匿名使用者
做好了,功能包括學生資訊新增,學生資訊顯示,按總體成績排序,學號查詢。資料儲存
在程式目錄下的yh.txt中,請在程式開始前在程式目錄下建立一個空白文字檔案yh.txt。
不要手動輸入資料,用程式輸入,不然除非按照我寫的格式一點不差的準確輸入,否則亂碼。程式會根據功能不同使用不同的視窗大小。預設最新加入的學生資訊在顯示介面會顯示在最上方。
#include
#include
#include
typedef struct student
stu,*stur;
//讀取資訊並建立連結串列
void createlist(stur &l)
while(!feof(fp))
printf("讀入資料成功!\n");
system("pause");
}void plist(stur &l) //列印
printf(" 姓名 | 性別 | 生日 | 班級 | 學號 | 年齡 | 語文 | 數學 | 英語 |\n");
while(p)
printf("\n");
插入元素並寫入檔案
fprintf(fp,"%s %s %s %d %d %d %d %d %d",s->name,s->***,s->birth,s->clas,s->stunum,s->age,s->chinese,s->math,s->english);
fclose(fp);
s->next=p->next;
p->next=s;
printf("已更新資料!\n");
}void clist(stur &l) //排序
}if(flag==0)}}
void searchl(stur &l) //單向連結串列查詢只能一個一個排查
p=p->next;
}printf("查無此人!\n");
return;
}void main()}}
c語言選擇題,C語言程式選擇題。
short int 定義的和int定義在32位計算機上是一樣的,都是兩個位元組,有符號的整型數。兩個位元組,如果是無符號的數,最大可以是0xffff,即65535 如果是有符號的數,可以存放的數是 32768到32767。32769明顯已經超出範圍了,所以變成了負值。至於具體為何是那個值,你使用二進...
c語言選擇題,詳解,C語言選擇題,求詳解
6 5 下面定義了一個日期結構date 結構變數date1和date2 struct datedate1 date2 對結構變數date2正確操作的語句是 a date2 date1 b strcpy date2,date1 c date2 d date2 你的回答 c 參 a 7 下面定義了一個日...
c語言選擇題
c 選擇題集 1.下列的各類函式中,不是類的成員函式。c a 建構函式b 解構函式c 友元函式d 拷貝初始化建構函式 2.作用域運算子 的功能是 b a 標識作用域的級別的b 指出作用域的範圍的 c 給定作用域的大小的d 標識成員是屬於哪個類的 3.下列說明中const char ptr 其中ptr...