日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实验11.2 链表 6-1 建立学生信息链表

發布時間:2024/8/5 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实验11.2 链表 6-1 建立学生信息链表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本題要求實現一個將輸入的學生成績組織成單向鏈表的簡單函數。

函數接口定義:
void input();
該函數利用scanf從輸入中獲取學生的信息,并將其組織成單向鏈表。鏈表節點結構定義如下:

struct stud_node {int num; /*學號*/char name[20]; /*姓名*/int score; /*成績*/struct stud_node *next; /*指向下個結點的指針*/ };

單向鏈表的頭尾指針保存在全局變量head和tail中。

輸入為若干個學生的信息(學號、姓名、成績),當輸入學號為0時結束。

裁判測試程序樣例:

#include <stdio.h> #include <stdlib.h> #include <string.h>struct stud_node {int num;char name[20];int score;struct stud_node *next; }; struct stud_node *head, *tail;void input();int main() {struct stud_node *p;head = tail = NULL;input();for ( p = head; p != NULL; p = p->next )printf("%d %s %d\n", p->num, p->name, p->score);return 0; }/* 你的代碼將被嵌在這里 */

輸入樣例:
1 zhang 78
2 wang 80
3 li 75
4 zhao 85
0
輸出樣例:
1 zhang 78
2 wang 80
3 li 75
4 zhao 85

void input(){int num;do{scanf("%d",&num);if(num!=0){//新建一個指針struct stud_node *p=(struct stud_node *)malloc(sizeof(struct stud_node));scanf("%s%d",p->name,&p->score);p->num=num;//num的值給pp->next=NULL;//新建的尾巴指向NULLif(head){//判斷head是否是NULL tail->next=p;//指向下一個鏈表(增加箭頭)} else{head=p;//head指向第一個 }tail=p; //新建的鏈到鏈表上}}while(num!=0); }

總結

以上是生活随笔為你收集整理的实验11.2 链表 6-1 建立学生信息链表的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。