原始碼
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
int main(void)
{
double a[2];
int i;
FILE *fp;
if((fp=fopen("test.txt","rt"))==NULL)
{
printf("不能打開檔案");
getch();
exit(1);
}
fscanf(fp,"%*[^\n]");
for(i=0;i<2;i++)
{
fscanf(fp,"%*6s%lf",&a[0]);
}
printf("%lf\n",a[0]);
printf("%lf\n",a[1]);
fclose(fp);
}
我的txt檔案是
成績
科目1:98 科目2:96
最后輸出結果是
96.0000
0.0000
為什么只是把第二個資料讀取到第一個陣列元素里了
uj5u.com熱心網友回復:
這句fscanf(fp,"%*6s%lf",&a[0]);
應該寫成
fscanf(fp,"%*6s%lf",&a[i]);
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/118577.html
標籤:基礎類
上一篇:在DLL中設定共享節不成功?
下一篇:Python基本資料型別
