尾插法输出只显示最后一个链表的内容,求问
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<windows.h>
#include<stdlib.h>
#include<string>
using namespace std;
typedef struct ListNode
{
int id;
string name;
string sex;
int ch, ma, en,sum;
ListNode* Next;
ListNode() {};
}Node;
Node* head=new ListNode();
void welcome();
void Add();
void Del();
void Change();
void Find();
void Out();
void Esc();
void readFile(ListNode* head);
void coutFile(ListNode* head);
int main()
{
readFile(head);
printf("%s\n", head->Next->name);
//printf("%s\n", head->name);
coutFile(head);
welcome();
bool goon = true;
while (goon)
{
int choice = 0;
cin >> choice;
switch (choice)
{
case 1:
Add();
break;
case 2:
Del();
break;
case 3:
Change();
break;
case 4:
Find();
break;
case 5:
coutFile(head);
Out();
break;
case 6:
Esc();
break;
default:
break;
}
printf("是否继续操作:Yes(1),No(0)");
cin >> goon;
}
return 0;
}
void welcome()
{
printf(" * * * * * * * * * * * *\n");
printf("* *学生成绩管理系统* * * \n");
printf("* * * * by feng* * * * *\n");
printf("增加学生信息----------1\n");
printf("删除学生信息----------2\n");
printf("修改学生信息----------3\n");
printf("查询学生信息----------4\n");
printf("输出学生信息----------5\n");
printf("退出学生信息----------6\n");
printf("输入你要进行的操作:");
}
//文件读入
void readFile(ListNode* head)
{
FILE* fpr = fopen("StdentInfo1.txt","r");
ListNode* st = new ListNode();
ListNode* p = head;
ListNode* s;
if (fpr == NULL) return;
else
{
while (fscanf(fpr, "%d %s %s %d %d %d %d", &st->id, &st->name, &st->sex, &st->ch, &st->ma, &st->en, &st->sum) != EOF)
{
//printf("%d %s %s %d %d %d %d\n", st->id, st->name, st->sex, st->ch, st->ma, st->en, st->sum);
s = (ListNode*)malloc(sizeof(ListNode));
s = st;
p->Next = s;// head->Next = s;
p = p->Next;
p->Next = NULL;
//printf("%s\n", p->name);
//printf("%d %s %s %d %d %d %d\n", head->Next->id, head->Next->name, t->sex, t->ch, t->ma, t->en, t->sum);
}
}
}
void coutFile(ListNode* head)
{
ListNode* p = head->Next;
if (head == NULL) return ;
while (p != NULL)
{
//cout << "FF" << endl;
printf("%d %s %s %d %d %d %d\n", p->id, p->name, p->sex, p->ch, p->ma, p->en, p->sum);
p = p->Next;
}
}
void Add()
{
}
void Del()
{
}
void Change()
{
}
void Find()
{
}
void Out()
{
}
void Esc()
{
}
【考点】复杂度的表示
我们一般要找到最小的上界和最大的下界。上下界虽说有无数个,我们还是希望找到的是最贴近真实情况的那一个。
下图为各种函数的增长性质:今日写文背景音乐《没那么难》
没那么难
做个选择没那么难
都是温温暖暖的
零零散散的期盼
没那么难
做个决定没那么难
无非日日夜夜的
也平平淡淡的勇敢
人们犹犹豫豫
错过了许多圆满
总是不知所措
匆匆忙忙 却心烦意乱
其实 没那么难
一个微笑 真的 没那么难
不知不觉中
我们终会把眼泪擦干
其实 没那么难
一个承诺 真的 没那么难
曾经的遗憾 又怎么会
代表如今 要和谁相伴
没那么难
每个答案没那么难
不过起起伏伏的
才真真切切的释然
没那么难
做个决定没那么难
无非日日夜夜的
也平平淡淡的勇敢
人们犹犹豫豫
错过了许多圆满
总是不知所措 匆匆忙忙
却心烦意乱
其实 没那么难
一个微笑 真的 没那么难
不知不觉中
我们终会把眼泪擦干
其实 没那么难
一个承诺 真的 没那么难
曾经的遗憾
又怎么会 代表如今
其实 没那么难
一个拥抱 真的 没那么难
我们的时光
原来不值得与孤单纠缠
其实 没那么难
爱一个人 真的 没那么难
即使会受伤 会聚散
都是生命里最好的片段
数据结构核心原理与算法应用
文件是空的,这代码上来就崩溃