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

题目链接: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 }
时间: 2024-08-10 08:50:45

统计学生信息(使用链表完成)的相关文章

【C项目】 文件,结构体,链表,排序, 学生信息管理系统

1.密码登录: 2.通过键盘输入学生信息,包括学生学号.姓名.成绩: 3.将输入的信息保存到指定文件中: 4.从文件中读取学生信息: 5.显示全部学生信息: 6.按学生总分进行降序排序: 7.删除学生信息: 8.查找学生信息,可以通过学号查找,也可以通过姓名查找: 9.统计学生信息,统计出最高分和学生人数: 10.退出系统: 源代码: [email protected]:~$ cat main.c  #include<stdio.h> #include<stdlib.h> #inc

C语言学生信息管理系统

//原创:!! 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #include <algorithm> 5 using namespace std; 6 int n; 7 8 struct student 9 { 10 char name[20] ; //姓名: 11 char classnumber[10] ; //班级 :(1403) 12 char gender[2

数据结构第一次作业(学生信息管理系统-顺序表&amp;&amp;链表)

实验目的 : 1 .掌握线性表的定义: 2 .掌握线性表的基本操作,如建立.查找.插入和删除等. 实验内容: 定义一个包含学生信息(学号,姓名,成绩)的的 顺序表和链表,使其具有如下功能: (1) 根据指定学生个数,逐个输入学生信息: (2) 逐个显示学生表中所有学生的相关信息: (3) 根据姓名进行查找,返回此学生的学号和成绩: (4) 根据指定的位置可返回相应的学生信息(学号,姓名,成绩): (5) 给定一个学生信息,插入到表中指定的位置: (6) 删除指定位置的学生记录: (7) 统计表中

利用链表实现简单的学生信息管理系统

#include <stdio.h>#include <stdlib.h>#include <string.h> typedef struct student{ int id; char name[20]; int age; char sex; char birthday[20]; char address[20]; char phone[15]; char email[30]; struct student *next;}student; student *head

用C语言写一个链表储存学生信息

题目 已知学生基本信息由学号(长整型).姓名(字符数组).性别(字符型).年龄(整型)组成.编程实现:建立一个结点按学号顺序存储学生信息的单向链表,并实现依据学号对链表的添加.修改.删除和检索功能:添加新结点后,应继续保持结点按学号顺序的链接方式.分别定义函数实现链表的初始化.链表的打印输出.以及在链表中添加.修改.删除和检索节点的功能. 基本思路 建立单向链表,存储学生数据,用不同函数实现上述功能,在主函数中调用函数进行操作. 代码实现 定义结构体类型存储信息 struct STUDENT_N

学生信息管理系统修改

北京工业大学耿丹学院 c语言设计课程报告   课程设计名称:高级语言程序设计 专业班级:计算机科学与技术1 姓名:吴双 学号:150809201   2016年5月10日 一 对c语言指针链表的体会 ------------------------ 二 修改学生信息管理系统 ------------------------ 三 体会 ------------------------ 一 对c语言指针链表的体会 1.指针 简单来说,指针是一个存储计算机内存地址的变量. 用 int *ptr 这种形

学生信息管理系统

根据资料显示,那么,如果写一个字符串到一个文件中,是什么方式呢?显示到屏幕上是默认的输出文件,如果是硬盘中的一个文件,首先要打开一个文件,然后才能往里写,那么就要告诉程序这个文件在什么地方,按照什么样的方式打开(读.写.读和写.添加.覆盖等),然后打开后要给这个打开的文件一个符号(指针变量),表示后续的读和写都是针对这个文件的,而不是到屏幕的,这个指针变量以后就代表了文件自身了. 在学生信息管理系统中,需要同时保存一个学生的姓名,性别,年龄等信息,那么设置变量保存很多同学的这些信息就有点不太方便

学生信息的读取与重排

有一个记录学生信息的文件,每一行记录一名学生的信息,格式入下 学号   姓名   性别   分数 1   分数 2   分数 3\n. 要求:( 1)读取文件的内容,串成一个链表. (2)按照总分递减排序将结果保存到原文件. 右键编译项目名->调试->命令行参数里面添加要读取与修改的学生信息文本. 以结构体数组作为载体进行排序与传递 Func.h #include<stdio.h> #include<stdlib.h> #include<string.h>

Java学生信息管理系统及支持用户名登录

package zzzzzzzz; import java.io.*; public class Text { public static void main(String[] args) throws MyException, IOException { Login l=new Login(); l.login(); } } class Student{ private String stunumber; private String name; private String age; pri