#include #include #include #define MAX_G 200 #define MAX_R 5 #define MAX_LEN 100 int rmaxi,rmaxj,error_flg=0; struct database{ char *kata[MAX_R]; }; static struct database db[MAX_G],taiou[MAX_G],sort_tmp; int memory_alloc(void); int file_load(void); int taiou_load(void); void memory_free(void); void error_msg(char *); void data_edit(void); void data_sort(void); void data_output(void); void all_hyouji(void) { int i,j; //printf("%d %d\n",rmaxi,rmaxj); for(i=0;imax){ max=atoi(db[j].kata[0]); s=j; } } sort_tmp=db[i]; db[i]=db[s]; db[s]=sort_tmp; } } void data_output(void) { int i,j,top_num,roop; top_num=strlen(db[0].kata[0]); for(i=0;i",db[i].kata[1]); printf("%s
",db[i].kata[2]); printf("\n"); } } void error_msg(char *msg) { printf("%s\n",msg); error_flg=1; } int file_load(void) { FILE *fp; int i,j,tmp; char han[1]; if((fp=fopen("data_in.txt","rb"))==NULL){ error_msg("ファイル読込失敗"); return(-1); } for(i=0;i0) j++; } else{ if(i>=MAX_G || j>=MAX_R){ error_msg("収録データ異常(データ数)"); fclose(fp); return(-1); } if(strlen(db[i].kata[j])>=MAX_LEN){ error_msg("収録データ異常(文字数)"); fclose(fp); return(-1); } han[0]=tmp; strncat(db[i].kata[j],han,1); if(j>rmaxj) rmaxj=j; rmaxi=i; } } rmaxi++; rmaxj++; fclose(fp); return(1); } int taiou_load(void) { FILE *fp; int i,j,tmp; char han[1]; if((fp=fopen("taiou.csv","rb"))==NULL){ error_msg("ファイル読込失敗"); return(-1); } for(i=0;i=MAX_G || j>=MAX_R){ error_msg("収録データ異常(データ数)"); fclose(fp); return(-1); } if(strlen(taiou[i].kata[j])>=MAX_LEN){ error_msg("収録データ異常(文字数)"); fclose(fp); return(-1); } han[0]=tmp; strncat(taiou[i].kata[j],han,1); } } fclose(fp); return(1); } int memory_alloc(void) { int i,j; for(i=0;i