#include #define M 80 #define N 100 static char s[N+1]; struct kougi_t { char dai[M]; int kaisi; int gakki; char you[M]; int gen; char kyokan[M]; char heya[M]; }; static struct kougi_t kougi[N]; static char *dayname[]={"月","火","水","木","金"}; main(int argc,char *argv[]) { int i,j,h,count,dow; FILE *fin; struct kougi_t *k; if(argc!=2) { fprintf(stderr,"プログラム名 対象データファイル\nと書いてください\n例 a.out jugyo.dat\n"); exit(1); } if ((fin=fopen(argv[1],"r"))==NULL) { fprintf(stderr,"File not found\n"); exit(1); } k = kougi; while(fgets(s,500,fin) != NULL){ sscanf(s,"%s %d %d %s %d %s %s",k->dai,&k->kaisi,&k->gakki,k->you,&k->gen,k->kyokan,k->heya); ++k; } k->dai[0] = '\0'; printf("99年度時間割り\n"); for(h=1;h<=2;++h){ printf("

%d 学期

\n",h); printf("
金\n"); for(i=1;i<=5;++i){ printf("
%d\n",i); for(dow=0;dow<5;dow++) { printf("\n",dayname[dow]); for(k=kougi;k->dai[0]!='\0';++k){ if(strcmp(dayname[dow],k->you)==0 && k->gakki==h && k->gen==i) printf("%s (%d)
%s %s
\n",k->dai,k->kaisi,k->kyokan,k->heya); } } } printf("
\n"); } printf("\n"); }