設計乙個結構體型別,包含姓名、出生日期。其中出生日期又包含年、月、日三部分資訊。輸入n個好友的資訊,輸出年齡最小的好友的姓名和出生日期。
首先輸入乙個整數n(1<=n<=10),表示好友人數,然後輸入n行,每行包含乙個好友的資訊:姓名(不超過8位)以及三個整數,分別表示出生日期的年月日。
輸出年齡最小的好友的姓名和出生日期,用空格隔開,出生日期的輸出格式見輸出樣例。
複製
3
zhangling 1983 2 4
wangliang 1983 12 11
fangfang 1985 6 1
複製
fangfang 1985-06-01
#includetypedef struct
birth;
typedef structpeople[10];
people p;
int young(birth a,birth b)else if(a.year < b.year)else
else if(a.mouth < b.mouth)else
else if(a.mouth < b.mouth)
else return 0;}}
}int main()
for(i=1;i0)
}printf("%s %d-%02d-%02d",p[minyoung].name,p[minyoung].birthday.year,p[minyoung].birthday.mouth,p[minyoung].birthday.day);
return 0;
}
printf("%04d", 1);
結果是: 0001
%後面的 0 表示不夠的位數補零,4是總位數
三個 if() else 語句巢狀
將三個整形變數放在乙個結構體中是個明智選擇,如果放在乙個結構體中(我就試過了)比較年月日大小的時候無法操作(原諒我的能力不夠,太笨就直說嘛!), 而將年月日結構體和姓名變數放在另乙個結構體中就好操作了。
好吧!其實也是可以操作的,那就不需要比較年月日的函式young(); 了,也不需要結構體陣列了(看的其他人的,看來小生還是太笨)。
誰的年齡最小(結構體專題)
題目描述 設計乙個結構體型別,包含姓名 出生日期。其 生日期又包含年 月 日三部分資訊。輸入n個好友的資訊,輸出年齡最小的好友的姓名和出生日期。輸入首先輸入乙個整數n 1 n 10 表示好友人數,然後輸入n行,每行包含乙個好友的資訊 姓名 不超過20位 以及三個整數,分別表示出生日期的年月日。輸出輸...
1465 誰的年齡最小(結構體專題)
設計乙個結構體型別,包含姓名 出生日期。其 生日期又包含年 月 日三部分資訊。輸入n個好友的資訊,輸出年齡最小的好友的姓名和出生日期。輸入 首先輸入乙個整數n 1 n 10 表示好友人數,然後輸入n行,每行包含乙個好友的資訊 姓名 不超過8位 以及三個整數,分別表示出生日期的年月日。輸出 輸出年齡最...
最小年齡的職員
題目描述 職工有職工號,姓名,年齡.輸入n個職工的資訊,找出3個年齡最小的職工列印出來。輸入描述 輸入第一行包括1個整數n,1 n 30,代表輸入資料的個數。接下來的n行有n個職工的資訊 包括職工號 整數 姓名 字串,長度不超過10 年齡 1 age 100 輸出描述 可能有多組測試資料,對於每組資...