⑴ 如何用c語言將文件中的數據寫入鏈表中
sw是我鏈表的首地址
fp是文件的指針
下面定義鏈表類型:num域存放的是int型數據,可根據你的情況來改變。
typedef
struct
node{
int
num;
struct
node
*next;
}node;
p
指向鏈表中的首元結點
while(p!=null){
fprintf(fp,
"%d,%s",
p->num);
p=p->next;
}
其實,這樣操作是非常簡單的。
⑵ C語言 怎麼把結構體數組寫入鏈表
1.用頭插法。因為數據追加和刪除比較多,追加的話,頭插法可以直接插,用尾插降低了時間效率,刪除用兩個一樣。
2./*結構體定義*/
struct client{
char account[14];
char name[10];
char identity[20];
char address[15];
long int money;
};
/*鏈表結點定義*/
struct node{
struct client band_inf;
struct node *next;
};
應該把結構體結點定義成鏈表的成員,這樣鏈表才對。如果像你那樣定義的話,完全不用定義結構體,鏈表就搞定了。因為你在鏈表裡面把結構的成員都又定義了。
3.
1),定義結點:p1=(struct node*)malloc(sizeof(struct node)) ;表示定義一個node型的結點指針
使用,這個要看具體怎麼用了。比如說刪除searchp,priorp是searchp的前面一個結點,這樣寫
priorp->next=searchp->next;
delete searchp; 即可
插入newnode在searchp的後面,可以這樣:
newnode->next=searchp->next;
⑶ 關於c語言把文件讀入鏈表
把文件讀入程序與程序讀入鏈表當兩回事來做,
**首先先定義一個節點形式
struct node {
char [20] date;
char [20] time;
char [20] place;
char [20] person;
char[20] event;
struct node* next;
};
**1.把文件輸入程序
//先定義一個struct 結構體臨時存儲文件
struct node *p1 = (struct node *) malloc (sizeof( struct node ));
//然後存入數據
fscanf(events,"%s,%s,%s,%s,%s",p1->date,p1->time,p1->place,p1->person,p1->event);
**2.把這個struct弄到鏈表當中區
自己可以建一個函數
void struct_connect_linkList( struct node head, struct node *p){
//這邊往前面插入的鏈表;
p->next = head->next;
head = p;
}
然後調用函數就行了 struct_connect_linkList(head, p1); //head就是鏈表的頭
//這里只是其中一種思路,僅供參考