标题:学生信息链表的创建和输出
只看楼主
黑暗骑士5DSB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2020-3-23
结帖率:50%
 问题点数:0 回复次数:1 
学生信息链表的创建和输出
在定义一个包含学生信息(学号、姓名、成绩)的链表基础上,读入相应的学生数据来完成学生信息链表的创建,然后统计学生表中的学生个数,同时逐行输出每个学生的信息。要求完成创建链表函数和输出显示学生链表信息函数。

函数接口定义:
int CreateList(LinkList &L,Student b);
int PrintList(LinkList &L);
其中 L 和 b 都是用户传入的参数。 L 是创建的学生信息链表; b 是要输入的一个学生的结构体数据。

裁判测试程序样例:
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
#define OK 1
#define ERROR 0
#define OVERFLOW -2

typedef struct tagStudent
{
    char no[20],name[50];
    float score;
}Student;
typedef struct LNode
{
    Student data;
    struct LNode *next;
}LNode,*LinkList;
int ListInit(LinkList &L)
{
    L=new LNode;
    L->next=NULL;
    return OK;
}
int ListEmpty(LinkList L){
   if(L->next)   
     return 0;
   else
     return 1;
}
int  ListLength(LinkList L){
    LinkList p;
    p=L->next;  
    int i=0;            
    while(p){
           i++;
           p=p->next;   
    }
    return i;                             
 }
int CreateList(LinkList &L,Student b);
int PrintList(LinkList &L);
int main()
{
    LinkList L,head;
    ListInit(L);                       
    head=L;                        
    Student s;
    while(cin>>s.no>>s.name>>s.score)     //输入no、name、score
    {
        if(!strcmp(s.no,"0")&&!strcmp(s.name,"0")&&s.score==0.0)
            break;                  //0 0 0 时结束
        CreateList(L,s);
    }
    cout<<ListLength(head)<<endl;
    PrintList(head);            
    return 0;                  
}
/* 请在这里填写答案 */
输入样例:
输入n+1行,其中前n行是n个学生的信息(学号、姓名、成绩),每个学生信息占一行,学号、姓名、成绩用空格分隔,成绩之后没有空格。最后第n+1行是输入结束标志:0 0 0(空格分隔的三个0)。其中学号和姓名为字符串类型,成绩为浮点数类型。

9787302257646 Jack 95
9787302164340 Sam 80
9787302219972 Marry 82
9787302203513 David 86
9787810827430 Susan 86
9787302257800 Dora 89
9787811234923 Lily 85
9787822234110 Kimi 88
0 0 0
输出样例:
总计n+1行,第1行是所创建的学生表中的学生个数,后n行是n个学生的信息(学号、姓名、成绩),每个学生信息占一行,学号、姓名、成绩用空格分隔。其中成绩输出保留一位小数。

8
9787302257646 Jack 95.0
9787302164340 Sam 80.0
9787302219972 Marry 82.0
9787302203513 David 86.0
9787810827430 Susan 86.0
9787302257800 Dora 89.0
9787811234923 Lily 85.0
9787822234110 Kimi 88.0
Press any key to continue

咋做的呢,完全没思路
搜索更多相关主题的帖子: 成绩 学生 链表 学生信息 int 
2021-04-11 09:36
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
你这是C代码,还是C++代码?
2021-04-12 09:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-505400-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.496549 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved