#include<stdio.h>
#include<stdlib.h>
struct node {
long num;
float score;
struct node* next;
} node;
void creat(){
node* head=(node*)malloc(sizeof(node));
head->num = 0;
head->score = 0;
node* p = head;
do {
node* newNode = (node*)malloc(sizeof(node));
scanf("%ld,%f", newNode->num, newNode->score);
newNode->next = NULL;
p->next = newNpde;
p = p->next;
} while (newNode->num);
return head;
}
void printNode(node* head) {
node* p = head;
while (p != NULL) {
printf("%ld%f", p->num, p->score);
p = p->next;
}
}
void del(node* head){
int val;
scanf("%ld", val);
node* p = head->next;
node* prev = head;
while (p != NULL) {
if (p->num = val) {
prev->next = p->next;
free(p);
break;
}
else {
prev = p;
p = p - >next;
}
}
}
void insert(node* head){
node* newNode = (node*)malloc(sizeof(node));
newNode->next = NULL;
int n;
scanf("%ld%f%d", &newNode->num, &newNode->score,&n);
p = head;
for (int i = 1; i <= n, i++) {
p = p->next;
if (i ==n)
{
newNode->next = p->next;
p->next = newNode;
}
}
}
int main()
{ creat(head);
del(head);
insert(head);
printfNode(head);
return 0;
}
我快要废了,谁来帮帮我
10101,90.0
10102,88.5
10103,95.0
10104,93.5
10105,88.0(输入数据)
0(输入结束)
10101(删除数据)
10106,98.0(插入数据)
2(插入位置)