#include <stdio.h>
#include <stdlib.h>
struct lnode {
char name[10];
int points;
int expense;
int income;
struct lnode *next;
} ;
int main(void) {
lnode *head, *tail,*p;
head=NULL;
tail=NULL;
p=NULL;
FILE *infile = fopen("c:/H7.txt", "r");
if( infile == NULL ) return 1;
while(!feof(infile))
{
lnode *newptr=(lnode *)malloc(sizeof(lnode));
newptr->next=NULL;
if (head == NULL) {
head = newptr;
}
else {
tail->next=newptr;
}
tail = newptr;
fscanf(infile,"%s %d %d %d ", &tail->name,&tail->points,&tail->expense,&tail->income);
};
p = head;
while (p != NULL){
printf("%s %d %d %d\n",p->name,p->points,p->expense,p->income);
p = p->next;
};
//free memory
p = head;
while (p != NULL){
free(p);
p = p->next;
};
head=NULL;
tail=NULL;
p=NULL;
system("pause");
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KIApzdHJ1Y3QgbG5vZGUgeyAKICAgICAgICAgIGNoYXIgbmFtZVsxMF07CiAgICAgICAgICBpbnQgcG9pbnRzOwogICAgICAgICAgaW50IGV4cGVuc2U7CiAgICAgICAgICBpbnQgaW5jb21lOwogICAgICAgICAgc3RydWN0IGxub2RlICpuZXh0Owp9IDsKIAppbnQgbWFpbih2b2lkKSB7CiAKICAgIGxub2RlICpoZWFkLCAqdGFpbCwqcDsKICAgCiAgICAKICAgIGhlYWQ9TlVMTDsKICAgIHRhaWw9TlVMTDsKICAgIHA9TlVMTDsKICAgIEZJTEUgKmluZmlsZSA9IGZvcGVuKCJjOi9INy50eHQiLCAiciIpOwogICAgCiAgICBpZiggaW5maWxlID09IE5VTEwgKSByZXR1cm4gMTsKCiAgICB3aGlsZSghZmVvZihpbmZpbGUpKQogICAgewogICAgICAgIGxub2RlICpuZXdwdHI9KGxub2RlICopbWFsbG9jKHNpemVvZihsbm9kZSkpOwogICAgICAgIG5ld3B0ci0+bmV4dD1OVUxMOwogICAgICAgIGlmIChoZWFkID09IE5VTEwpIHsKICAgICAgICAgICAgaGVhZCA9IG5ld3B0cjsKICAgICAgICB9IAogICAgICAgIGVsc2UgeyAgIAogICAgICAgICAgICB0YWlsLT5uZXh0PW5ld3B0cjsKICAgICAgICB9CiAgICAgICAgdGFpbCA9IG5ld3B0cjsKICAgICAgICAKICAgICAgICBmc2NhbmYoaW5maWxlLCIlcyAlZCAlZCAlZCAiLCAmdGFpbC0+bmFtZSwmdGFpbC0+cG9pbnRzLCZ0YWlsLT5leHBlbnNlLCZ0YWlsLT5pbmNvbWUpOyAgCiAgICAgICAgCiAgICAgICAgCiAgICB9OwogICAgCiAgICBwID0gaGVhZDsKICAgIHdoaWxlIChwICE9IE5VTEwpewogICAgICAgIHByaW50ZigiJXMgJWQgJWQgJWRcbiIscC0+bmFtZSxwLT5wb2ludHMscC0+ZXhwZW5zZSxwLT5pbmNvbWUpOwogICAgICAgICAgICAKICAgICAgICBwID0gcC0+bmV4dDsKICAgIH07CgogICAgLy9mcmVlIG1lbW9yeQogICAgcCA9IGhlYWQ7CiAgICB3aGlsZSAocCAhPSBOVUxMKXsKICAgICAgICBmcmVlKHApOwogICAgICAgIHAgPSBwLT5uZXh0OwogICAgfTsKICAgIAogICAgaGVhZD1OVUxMOwogICAgdGFpbD1OVUxMOwogICAgcD1OVUxMOwogCiAgICBzeXN0ZW0oInBhdXNlIik7CiAgICByZXR1cm4gMDsKfQ==