ExamIDを表す数値を保持するchar変数が1つあります(charである必要があるためcharです)。私のテキストファイルは次のようになります。
5 1 Exam 1 (audit 31.10.)
6 1 Exam 2 (audit 23.10.)
14 1 Lab 01 (audit 21.11.)
16 1 Lab 02 (audit 28.11.)
...
各行の最初の数字はexamID、2番目はその試験の最大ポイント数、行の残りのテキストは試験名です。テキストでexamIDの一致を検索する必要があります。一致する場合は、後で使用できるように、最大ポイント数と試験名を変数に保存する必要があります。これは私がこれまでに持っているものです:
char examName[100];
char tmp[100];
int examID;
int maxPoint=0;
FILE *fin=fopen("Exams.txt", "r");
while(fgets(tmp, sizeof(char)*100, fin)!=NULL) {
sscanf(tmp, "%d", &examID);
if(examID==s.examNum)
printf("%d", examID);
}
だから私は一致を見つけてそれを印刷しました、そしてそれは大丈夫です、しかし私は行の2番目の数字と試験の名前を読む方法がわかりません。