txt檔案是這樣的

我的結構體是這樣的
typedef struct {
int num;
char name[20];
int age;
float score;
}datatype;
typedef struct {
datatype data[MAX];
int listlen;
}sqlist;讀取檔案的函式FileRead是這樣的
void FileRead(sqlist *L)
{
FILE* fp;
char filename[40];
printf("請輸入檔案名(在結尾加一個空格作為字串終止符):\n");
scanf_s("%s", &filename, 40);
printf("該檔案中一共有多少組資料?");
scanf_s("%d", &L->listlen);
if ((fp = fopen(filename, "r")) == NULL)
return;
for (int i = 0; i < L->listlen; i++) {
fscanf_s(fp, "%d %s %d &f", &L->data[i].num, L->data[i].name, &L->data[i].age, &L->data[i].score);
}
printf("\n資料匯入成功!");
_getch();
}
main函式里讀檔案的部分是這樣的
int main()
{
sqlist* L = (sqlist*)malloc(sizeof(sqlist));
FileRead(L);
用來輸出的OUT函式是這樣的
void OUT(sqlist* L)
{
for (int i = 0; i < L->listlen; i++) {
printf("%6d%6s%6d%6.1f\n", L->data[i].num, L->data[i].name, L->data[i].age, L->data[i].score);
}
}
一運行輸出讀取資訊就出現滿屏的屯屯屯,請問怎么解決呢?本人非常菜,剛學資料結構
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/89132.html
標籤:C語言
