Codeup 結構體 問題C

2021-09-12 03:09:17 字數 990 閱讀 9508

問題 c: c語言11.4

時間限制: 1 sec 記憶體限制: 32 mb

設有若干個人員的資料,其中包含學生和教師。學生的資料中包括:號碼、姓名、性別、職業、班級。教師的資料報括:號碼、姓名、性別、職業、職務。可以看出,學生和教師所包含的資料是不同的。現在要求把這些資料放在同乙個**中儲存,使用結構體中的共用體實現。結構體定義如下:

struct category;

};在以上的結構體中,如果job項為s(學生),則第5項為class(班級);如果job項是t(教師),則第5項為position(職務)。

輸入幾個人員的資料,將其儲存在以上包含共用體的結構體陣列中,並輸出。

第一行有乙個整數n,表示以下n行分別表示n個人員的資料。保證n不超過100。

之後的n行,每行有5項用空格隔開的內容。前4項分別為人員的號碼(整數)、姓名(長度不超過9的無空格字串)、性別(字元,m或f)和職業(字元,s或t)。如果第4項是s,則第5項為乙個整數,表示班級;如果第4項是t,則第5項為乙個長度不超過9的無空格字串,表示職務。

共有n行,與輸入格式相同,輸出讀入的所有內容。

請注意行尾輸出換行。

樣例輸入

2101 li f s 501

102 wang m t prof

樣例輸出

101 li f s 501

102 wang m t prof

共同體:使幾個不同型別的變數共佔一段記憶體(相互覆蓋)。所佔記憶體長度是各最長的成員佔的記憶體長度。

#include #include #include struct stuteacategory;

}st[100];

int main()

{ int i=0;

int cnt=0;

scanf("%d",&cnt);

for(i=0;i改了半天發現結果一直出現錯誤,結果是輸出的時候多了乙個&

對結構體和共同體不夠理解可以參考以下鏈結

c++結構體與聯合體的區別

codeup結構體 共用體

題目描述 設有若干個人員的資料,其中包含學生和教師。學生的資料中包括 號碼 姓名 性別 職業 班級。教師的資料報括 號碼 姓名 性別 職業 職務。可以看出,學生和教師所包含的資料是不同的。現在要求把這些資料放在同乙個 中儲存,使用結構體中的共用體實現。結構體定義如下 struct category ...

codeup 題目解答(結構體的使用)

contest100000572 演算法筆記 2.8小節 c c 快速入門 結構體 struct 的使用 問題b 11.2 題目描述 定義乙個結構體student,儲存學生的學號 名字 性別和年齡,讀入每個學生的所有資訊,儲存在結構體中,並輸出。結構體student的定義如下 struct stud...

C語言結構體問題

c語言結構體對齊也是老生常談的話題了。基本上是面試題的必考題。內容雖然很基礎,但一不小心就會弄錯。寫出乙個struct,然後sizeof,你會不會經常對結果感到奇怪?sizeof的結果往往都比你宣告的變數總長度要大,這是怎麼回事呢?有人給對齊原則做過總結,具體在 看到現在已記不起來,這裡引用一下前人...