當前位置:首頁 » 編程語言 » c語言程序網

c語言程序網

發布時間: 2024-12-26 02:23:25

c語言 編寫程序

鏈表創建使用creat函數,每調用一次創建一個節點。第一次調用函數會自己創建頭節點內存。
列印輸出部分,只要列印第一個節點,只要stuHead->next就可以了。
我這里寫循環里,是演示遍歷鏈表,你把break去掉就是列印整個鏈表。

#include<stdio.h>

#include<malloc.h>

typedef struct stuInfo

{

int id;//學號

char name[10];//姓名

int score;//成績

struct stuInfo *next;

}SINFO;

int creat(SINFO **stuHead,SINFO**stuTail);//成功返回1,失敗返回0

int main()

{

SINFO *stuHead=NULL,*stuTail=NULL;

if(!creat(&stuHead,&stuTail))

return 1;

if(!creat(&stuHead,&stuTail))

return 1;

if(!creat(&stuHead,&stuTail))

return 1;

while(stuHead->next)

{

printf("鏈表第一個學生信息: ");

printf("學號:%d ",stuHead->next->id);

printf("姓名:%s ",stuHead->next->name);

printf("成績:%d ",stuHead->next->score);

break;//去掉這個,就是列印鏈表所有信息,作為參考

stuHead=stuHead->next;

}

return 0;

}

int creat(SINFO **stuHead,SINFO**stuTail)//成功返回1,失敗返回0

{

SINFO *sHead=*stuHead,*sTail=*stuTail,*sNew=NULL;

if(!sHead)

{

sHead=(SINFO *)malloc(sizeof(SINFO)),sHead->next=NULL;

if(!sHead)

return 0;//拋出異常

}

sNew=(SINFO *)malloc(sizeof(SINFO));

if(!sNew)

return 0;//拋出異常

printf("請輸入學號:"),scanf("%d",&sNew->id);

printf("請輸入姓名:"),scanf("%s",sNew->name);

printf("請輸入成績:"),scanf("%d",&sNew->score);

sNew->next=NULL;

if(sHead->next==NULL)

sHead->next=sNew;

else

sTail->next=sNew;

sTail=sNew;

*stuHead=sHead;

*stuTail=sTail;

return 1;

}

㈡ 有沒有小白基礎的c語言程序設計百度網盤分享

C語言程序設計教程:
http://pan..com/s/1gf7QEMf
網路網盤資源下載
這還有個比較多的
鏈接: http://pan..com/s/1hsGCfha 密碼: xjbr

熱點內容
迭代法編程c 發布:2025-05-15 04:58:01 瀏覽:814
用什麼dns伺服器地址快 發布:2025-05-15 04:52:59 瀏覽:26
手機端so反編譯 發布:2025-05-15 04:50:55 瀏覽:610
linuxlamp安裝 發布:2025-05-15 04:50:45 瀏覽:578
sqlplus緩存區怎麼設置 發布:2025-05-15 04:50:44 瀏覽:858
shell腳本環境變數 發布:2025-05-15 04:45:18 瀏覽:693
安卓nba2k18什麼時候出 發布:2025-05-15 04:38:42 瀏覽:393
王者安卓轉蘋果為什麼顯示失敗 發布:2025-05-15 04:35:49 瀏覽:18
手機優酷緩存視頻格式 發布:2025-05-15 04:13:45 瀏覽:210
公益電影分鏡頭腳本插畫 發布:2025-05-15 04:08:37 瀏覽:961