int 动态链表 超过 倒序输出 包括 使用 情况 http
题目链接:http://ica.openjudge.cn/struct/3/
利用动态链表记录从标准输入输入的学生信息(学号、姓名、性别、年龄、得分、地址)
其中, 学号长度不超过 20, 姓名长度不超过 40, 性别长度为 1, 地址长度不超过 40
- 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
- #include using namespace std;
- struct node {
- string st;
- struct node * pre;
- };
- int main() {
- int i;
- string s;
- struct node * head,
- *t;
- head = new struct node;
- getline(cin, s);
- head - >st = s;
- head - >pre = NULL;
- t = head;
- while (true) {
- getline(cin, s);
- if (s == "end") {
- break;
- }
- head = new struct node;
- head - >st = s;
- head - >pre = t;
- t = head;
- }
- head = new struct node;
- head - >pre = t;
- while (head - >pre != NULL) {
- head = head - >pre;
- cout < st << endl;
- }
- return 0;
- }
下面的偷懒的代码就是不行,我也不懂到底什么情况了
- #include#include < string.h > int main(int argc, char * argv[]) {
- char stuInfo[200];
- while (1) {
- gets(stuInfo);
- if (strcmp(stuInfo, "end") == 0) break;
- printf("%s\n", stuInfo);
- }
- return 0;
- }
统计学生信息(使用链表完成)
来源: http://www.bubuko.com/infodetail-2231162.html