描述
使用3個佇列,分別保留手機上最近10個,(0)未接來電、(1)已接來電、(2)已撥**。 輸入
全部聯絡歷史,每行一條記錄。
每條記錄包含兩個數字,第乙個數代表記錄型別,第二個數代表手機號碼。 輸出
分3列輸出未接來電、已接來電、已撥**。
列之間用空格分割,後接**在最先輸出,不足10條用0佔位。
樣例輸入1
2 182704776991 10149800116
0 19906559817
1 16209018105
1 16804212234
2 19289130583
1 17982711123
0 10897630486
1 11860787674
0 15192777554
樣例輸出1
15192777554 11860787674 1928913058310897630486 17982711123 18270477699
19906559817 16804212234 0
0 16209018105 0
0 10149800116 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
#include#include#define lld long long
typedef struct node
node;
typedef struct
link;
void initqueue(link *q);
void creatqueue(link*,link*,link*);
void printqueue(link *q);
int main()
return 0;
}void initqueue(link *q)
void creatqueue(link *q0,link *q1,link *q2)
q->rear->next=q;
q->pre=q->rear;
q->rear=q; }}
void printqueue(link *q)
else
printf("0");
}
因為vc6.0沒有long long型所以此**不能在上面執行。
總結:我遇到的最大的問題是不懂沒好好讀題,題中說用3個佇列分別保留最近10條聯絡歷史,意思是說每個佇列必須能保留10條,之前只讓它總共能輸入10條而已。
但是學會了eof的用法之後,就可以通過把限定輸入10條變成eof解決這個問題。
MTK 聯絡歷史分析
當聯絡歷史超過20個,且穿插撥打 本中的號碼時,聯絡歷史會出問題,表現為在聯絡歷史中的名字與其號碼不相符合,結果是 在聯絡歷史中撥號時撥的是其它號碼,與名字不符。經過反覆試驗,發現規律為 當聯絡歷史中的記錄超過10個時,撥打第11個號碼,會自動將原來第1個記錄的號碼修改為第11個的號碼,撥打第12個...
Windows Mobile獲取聯絡歷史
在現有的.net compact framework中,無論是1.0 2.0還是3.5版本,都沒有直接獲取使用者聯絡歷史的介面,那麼,我們只能自己封裝底層api來實現了。改介面在phone.dll中,呼叫phonegetcalllogentry方法會返回乙個聯絡歷史結構,在該結構中,包含號碼 姓名 ...
Windows Mobile獲取聯絡歷史
在現有的.net compact framework中,無論是1.0 2.0還是3.5版本,都沒有直接獲取使用者聯絡歷史的介面,那麼,我們只能自己封裝底層api來實現了。該介面在phone.dll中,呼叫phonegetcalllogentry方法會返回乙個聯絡歷史結構,在該結構中,包含號碼 姓名 ...