zoukankan      html  css  js  c++  java
  • 统计学生信息(使用链表完成)

    题目链接: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
    ",stuInfo);
    11     }
    12     return 0;
    13 }
  • 相关阅读:
    数据--第28课
    数据--第27课
    数据--第26课
    数据--第25课
    数据--第23课
    数据--第24课
    数据--第22课
    数据--第21课-递归课后练习
    lambda表达式
    数组和链表
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/7246418.html
Copyright © 2011-2022 走看看