题目链接: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 }