\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
浦和レッズ 62 52 32
徳島ヴォルティス 14 16 74
アルビレックス新潟 44 30 36
横浜F・マリノス 51 37 29
柏レイソル 60 48 40
大宮アルディージャ 35 44 60
セレッソ大阪 31 36 48
川崎フロンターレ 55 56 43
鹿島アントラーズ 60 64 39
サンフレッチェ広島 50 44 37
FC東京 48 47 33
ガンバ大阪 63 59 31
ヴァンフォーレ甲府 41 27 31
ベガルタ仙台 38 35 50
名古屋グランパス 48 47 48
サガン鳥栖 60 41 33
清水エスパルス 36 42 60
ヴィッセル神戸 45 49 50
//////////////////////////////////////////////////////////////////////
からデータを読み込んで、勝ち点順に並べ替え、勝ち点が同じ場合は得失点差で並べ替えをしたいです。
とりあえず、データをすべて読み込んで配列に保存するプログラムを書きたいのですが、警告がでてうまく実行できません。
1>c:\users\keisuke\documents\visual studio 2017\projects\3.c\j1633升田圭亮3.c(26): warning C4477: 'fscanf_s' : 書式文字列 '%s' には、型 'unsigned int' の引数が必要ですが、可変個引数 2 は型 'int *' です
1>c:\users\keisuke\documents\visual studio 2017\projects\3.c\3.c(26): note: この引数はバッファー サイズとして使用されます
1>c:\users\keisuke\documents\visual studio 2017\projects\3.c\3.c(26): warning C4473: 'fscanf_s': 書式文字列として渡された引数が不足しています
1>c:\users\keisuke\documents\visual studio 2017\projects\j13.c\3.c(26): note: プレースホルダーとそのパラメーターには 5 の可変個引数が必要ですが、4 が指定されています。
1>c:\users\keisuke\documents\visual studio 2017\projects\3.c\3.c(26): note: 不足している可変個引数 5 が書式文字列 '%d' に必要です
何がいけないのでしょうか。
コード: 全て選択
#include <stdio.h>
struct LeagueData {
char team[20]; //チーム名
int points; //勝ち点
int g_for; //得点
int g_against; //失点
int g_diff; //得失点差
} L_Data[18];
//int Compare(const void*d1, const void*d2) {
//return ((struct Leaguedata*)d2)-> - ((struct Car *)p2)->num
//}
void DispTable(struct LeagueData *L_Data, int n)
{
}
int main() {
int i;
FILE*fp;
fopen_s(&fp, "J_LEAGUE.txt", "r");
if (fp == NULL) {
printf_s("ファイルを開けませんでした.\n");
return -1;
}
for (i = 0; i < 18; i++) {
fscanf_s(fp,"%s %d %d %d ", &L_Data[i].team, &L_Data[i].points, &L_Data[i].g_for, &L_Data[i].g_against);
L_Data[i].g_diff = L_Data[i].g_for - L_Data[i].g_against;
printf_s("%s %d %d %d %d \n", L_Data[i].team, L_Data[i].points, L_Data[i].g_for, L_Data[i].g_against, L_Data->g_diff);
}
fclose(fp);
return 0;
}