在C語言中 運用鍊錶寫乙個簡易投票系統

2021-09-29 21:50:35 字數 1318 閱讀 5064

●演示結果

某個組織有n個候選人,並有多人參與投票,而且每票只能投乙個人.

先輸入候選人名字,再輸入同學所投的候選人名字,最後輸出候選人票數.

先建立鍊錶常規操作會使用到的結構體以儲存名字和票數,寫出基本鍊錶建立操作函式來建立候選人並投票,最後按照票數降序排列並輸出結果.

★預編譯及全域性變數

#define _crt_secure_no_warnings

#include

#include

#include

struct vote

;struct node

;

★功能函式
struct node*

createlist()

//建立表

struct node*

createnode

(struct vote data)

//建立節點

void

insertnodebyhead

(struct node* listheadnode,

struct vote data)

struct node*

(struct node* listheadnode,

char

* name)

while

(pmove !=

null)}

if(strcmp

(pmove->data.name, name)==0

)}}void

printlist

(struct node* listheadnode)

printf

("\n");

}struct node*

sort

(struct node* listheadnode)}}

}void

votevote

(struct node* curnode)

★主函式
int

main()

printf

("輸入總票數:");

C語言中的乙個鍊錶!

struct element struct element newelement char name char pwd int add struct element head,struct element ele while head next 0 head next ele return 1 st...

C語言寫乙個雜湊表

目錄 雜湊表,就是下標可以為字母的陣列。假設現有乙個陣列int a 100 想查詢其中第40個元素,則直接輸入a 40 就可以了,時間複雜度為o 1 o 1 o 1 問題在於,當下標不是數字,而是乙個字串的時候,可能需要乙個超大的空間才能將所有下標妥善地存放在特定的位置。例如,若以大小寫字母作為下標...

如何寫乙個鍊錶

有的時候,處於記憶體中的資料並不是連續的。那麼這時候,我們就需要在 資料結構中新增乙個屬性,這個屬性會記錄下面乙個資料的位址。有了這個位址之後,所有的資料就像一條鍊子一樣串起來了,那麼這個位址屬性就起到了穿線鏈結的作用。相比較普通的線性結構,鍊錶結構的優勢是什麼呢?我們可以總結一下 1 單個節點建立...