查詢問題 例5 2 查詢學生資訊

2021-09-30 20:03:52 字數 1273 閱讀 7656

題目描述:

輸入n個學生的資訊,然後進行查詢。

輸入:

輸入的第一行為n,即學生的個數(n<=1000)

接下來的n行包括n個學生的資訊,資訊格式如下:

01 李江 男 21

02 劉唐 男 23

03 張軍 男 19

04 王娜 女 19

然後輸入乙個m(m<=10000),接下來會有m行,代表m次查詢,每行輸入乙個學號,格式如下:

0203

0104

輸出:

輸出m行,每行包括乙個對應於查詢的學生的資訊。

如果沒有對應的學生資訊,則輸出「no answer!」

樣例輸入:

401 李江 男 21

02 劉唐 男 23

03 張軍 男 19

04 王娜 女 19502

0301

0403

樣例輸出:

清華大學計算機研究生機試真題

解題思路:先將輸入的學生按學號排序重新存好, 然後採用二分查詢法.

#include

using namespace std;

struct student

}buf[

1001];

intmain()

sort

(buf, buf+n)

;//對陣列排序使其按照學號公升序排列

int t;

cin >> t;

//有t組詢問

while

(t--

)else

if(tmp>

0) top = mid -1;

//若大於,則結束下標變為中間點前乙個點下標

else base= mid+1;

//若小於,則開始點下標變為中間點後乙個點座標 }if

(ans==-1

)else

printf

("%s %s %s %d\n"

, buf[ans]

.no, buf[ans]

.name, buf[ans]

.***, buf[ans]

.age)

;//若查詢成功,則輸出 }}

return0;

}

問題 C 查詢學生資訊

題目描述 輸入n個學生的資訊,然後進行查詢。輸入輸入的第一行為n,即學生的個數 n 1000 接下來的n行包括n個學生的資訊,資訊格式如下 01 李江 男 21 02 劉唐 男 23 03 張軍 男 19 04 王娜 女 19 然後輸入乙個m m 10000 接下來會有m行,代表m次查詢,每行輸入乙...

問題 C 查詢學生資訊

題目描述 輸入n個學生的資訊,然後進行查詢。輸入輸入的第一行為n,即學生的個數 n 1000 接下來的n行包括n個學生的資訊,資訊格式如下 01 李江 男 21 02 劉唐 男 23 03 張軍 男 19 04 王娜 女 19 然後輸入乙個m m 10000 接下來會有m行,代表m次查詢,每行輸入乙...

問題 C 查詢學生資訊

時間限制 1 sec 記憶體限制 32 mb 獻花 242 解決 92 獻花 花圈 tk題庫 輸入n個學生的資訊,然後進行查詢。輸入的第一行為n,即學生的個數 n 1000 接下來的n行包括n個學生的資訊,資訊格式如下 01 李江 男 21 02 劉唐 男 23 03 張軍 男 19 04 王娜 女...