统计学生信息(使用链表完成)

简介: 题目链接:http://ica.openjudge.cn/struct/3/总时间限制: 1000ms  内存限制: 65536kB描述利用动态链表记录从标准输入输入的学生信息(学号、姓名、性别、年龄、得分、地址)其中,学号长度不超过20, 姓名长度不超过40, 性别长度为1, 地址长度...

题目链接:http://ica.openjudge.cn/struct/3/

总时间限制: 1000ms  内存限制: 65536kB
描述

利用动态链表记录从标准输入输入的学生信息(学号、姓名、性别、年龄、得分、地址)

其中,学号长度不超过20, 姓名长度不超过40, 性别长度为1, 地址长度不超过40

输入
包括若干行,每一行都是一个学生的信息,如:
00630018 zhouyan m 20 10.0 28#460
输入的最后以"end"结束
输出
将输入的内容倒序输出
每行一条记录,按照
学号 姓名 性别 年龄 得分 地址
的格式输出
样例输入
00630018 zhouyan m 20 10 28#4600
0063001 zhouyn f 21 100 28#460000
0063008 zhoyan f 20 1000 28#460000
0063018 zhouan m 21 10000 28#4600000
00613018 zhuyan m 20 100 28#4600
00160018 zouyan f 21 100 28#4600
01030018 houyan m 20 10 28#4600
0630018 zuyan m 21 100 28#4600
10630018 zouan m 20 10 28#46000
end
样例输出
10630018 zouan m 20 10 28#46000
0630018 zuyan m 21 100 28#4600
01030018 houyan m 20 10 28#4600
00160018 zouyan f 21 100 28#4600
00613018 zhuyan m 20 100 28#4600
0063018 zhouan m 21 10000 28#4600000
0063008 zhoyan f 20 1000 28#460000
0063001 zhouyn f 21 100 28#460000
00630018 zhouyan m 20 10 28#4600

这个题目主要是输入格式不明确,我也不知道测试数据到底要什么样的格式才对。

下面的代码来自网络,可以ac

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 struct node
 4 {
 5     string st;
 6     struct node *pre;
 7 };
 8 
 9 int main()
10 {
11     int i;
12     string s;
13     struct node *head,*t;
14     head=new struct node;
15 
16     getline(cin,s); 
17     head->st=s; 
18     head->pre=NULL;
19     t=head;
20 
21     while (true)
22     {
23         getline(cin,s);
24         if (s=="end"){ break; }
25         head=new struct node;
26         head->st=s;
27         head->pre=t;
28         t=head; 
29     }
30 
31     head=new struct node;
32     head->pre=t;
33 
34     while (head->pre!=NULL)
35     {
36         head=head->pre;
37         cout<<head->st<<endl;    
38     }
39     return 0;
40 }

下面的偷懒的代码就是不行,我也不懂到底什么情况了

 1 #include<stdio.h>
 2 #include<string.h>
 3 int main(int argc, char *argv[])
 4 {
 5     char stuInfo[200];
 6     while(1)
 7     {
 8         gets(stuInfo);
 9         if(strcmp(stuInfo,"end")==0) break;
10         printf("%s\n",stuInfo);
11     }
12     return 0;
13 }

 

相关文章
|
4月前
|
存储 算法 Java
LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
LeetCode初级算法题:反转链表+统计N以内的素数+删除排序数组中的重复项Java详解
48 0
链表遍历,链表查找和统计节点,链表插入新节点,链表删除节点,链表修改指定节点,链表头插法,尾插法总结
链表遍历,链表查找和统计节点,链表插入新节点,链表删除节点,链表修改指定节点,链表头插法,尾插法总结
|
7月前
|
存储 C语言
[C语言/PTA] 建立学生信息链表
[C语言/PTA] 建立学生信息链表
147 0
6-10 建立学生信息链表(20分)
本题要求实现一个将输入的学生成绩组织成单向链表的简单函数。
91 0
|
Python
python 递归和非递归实现 统计链表节点个数
python 递归和非递归实现 统计链表节点个数
92 0
python 递归和非递归实现 统计链表节点个数
6-3 建立学生信息链表
本题要求实现一个将输入的学生成绩组织成单向链表的简单函数。
248 0
|
6月前
|
存储 SQL 算法
LeetCode力扣第114题:多种算法实现 将二叉树展开为链表
LeetCode力扣第114题:多种算法实现 将二叉树展开为链表
|
6月前
|
存储 SQL 算法
LeetCode 题目 86:分隔链表
LeetCode 题目 86:分隔链表
|
6月前
|
存储 算法 Java
【经典算法】Leetcode 141. 环形链表(Java/C/Python3实现含注释说明,Easy)
【经典算法】Leetcode 141. 环形链表(Java/C/Python3实现含注释说明,Easy)
65 2
|
7月前
<数据结构>五道LeetCode链表题分析.环形链表,反转链表,合并链表,找中间节点.
<数据结构>五道LeetCode链表题分析.环形链表,反转链表,合并链表,找中间节点
61 1