#include #include #define NAME_SIZE 64 #define HIST_SIZE 11 void make_hist(FILE *dfp, int hist[]) { } void print_hist(FILE *hfp, int hist[]) { int i; for (i = 0; i < HIST_SIZE; i++) { if ( i < HIST_SIZE-1 ) { fprintf(hfp, "%3d --%3d: ", i*10, i*10+9); } else{ fprintf(hfp, "%9d: ", 100); } fprintf(hfp, "\n"); } } int main(void) { int hist[HIST_SIZE] = {0}; char data_file_name[NAME_SIZE]; char hist_file_name[NAME_SIZE]; FILE *dfp, *hfp; printf("データファイル名を入力してください(%d文字未満)\n> ", NAME_SIZE); scanf("%s", data_file_name); printf("出力先のファイル名を入力してください(%d文字未満)\n> ", NAME_SIZE); scanf("%s", hist_file_name); if ( strcmp(data_file_name, hist_file_name) == 0 ) { printf("[エラー] 同じファイルには出力できません\n"); return 1; } if ( (dfp = fopen(data_file_name, "r")) == NULL ) { printf("[エラー] データファイル %s を開けません\n", data_file_name); return 1; } if ( (hfp = fopen(hist_file_name, "w")) == NULL ) { printf("[エラー] 出力先の %s を開けません\n", hist_file_name); return 1; } make_hist(dfp, hist); print_hist(hfp, hist); fclose(dfp); fclose(hfp); return 0; }