設有若干個人員的資料,其中包含學生和教師。學生的資料中包括:號碼、姓名、性別、職業、班級。教師的資料報括:號碼、姓名、性別、職業、職務。可以看出,學生和教師所包含的資料是不同的。現在要求把這些資料放在同乙個**中儲存,使用結構體中的共用體實現。結構體定義如下:struct category;
};在以上的結構體中,如果job項為s(學生),則第5項為classnum(班級);如果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 501102 wang m t prof
#include
typedef
struct
category;
} member;
intmain()
else
if(m[i]
.job ==
't')
}return0;
}
C C 結構體儲存問題
64位作業系統,不同型別變數對應的位元組數為 char 1個位元組 char 即指標變數 8個位元組 32位佔4個位元組 short int 2個位元組 int 4個位元組 unsigned int 4個位元組 float 4個位元組 double 8個位元組 long 8個位元組 32位佔4個位元...
《演算法筆記》2 8結構體struct的使用
二 分析 結構體 struct 可以將若干個不同型別的變數或陣列封裝在一起,方便儲存一些復合資料。結構體的大括號外也要跟分號誒!結構體的定義 struct studentinfo alice,bob,stu 1000 分析 其中 studentinfo是這個結構體的型別名,內部分別定義了id 學號 ...
C C 中結構體的對齊問題
首先需要知道記憶體是按照4位元組對齊的,看下面的結構體 typedef struct st type 記憶體可以看作長度為4的挨在一起的格仔,首先變數a b,長度為2,占用了第乙個格仔的頭兩個位置 變數c長度為4,第乙個格仔已經放不下,只能另起一格,從第二個格仔開始放置 然後變數d,第二個格仔已經被...