Boost総合スレ part7at TECHBoost総合スレ part7 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト671:デフォルトの名無しさん 09/06/27 20:44:52 program_optionsのファイル読み込みはいらないよなぁ シリアライズの方が手っ取り早いし、ちゃんとやるならspirit使うし 672:デフォルトの名無しさん 09/06/27 21:53:00 program_optionsはBoostに含まれるにしては割と 出来が良くない気がする。 まあライセンスが緩いBoostだから、いっぱいあるのは俺は歓迎だけどさ。 673:progress_display 09/06/27 22:16:05 俺もそう思う 674:program_options 09/06/27 22:36:10 >>673 お前にだけは言われたくない 675:672 09/06/27 22:38:28 >>674 まあまあ。 喧嘩うるなよ。 676: ◆/91kCCQXBo 09/06/28 01:39:40 >>113 ソートのアルゴリズムは習ってないということで。 #include <stdio.h> #include <stdlib.h> struct seiseki { char name[20]; int order[6]; } seito[] = {{"太郎",80,90,75,70,70}, {"次郎",70,85,80,80,85}, {"三郎",75,95,65,90,95}, {"四郎",65,70,80,75,80}, {"春子",90,100,85,90,85},{"夏子",100,95,80,85,80}, {"秋子",60,75,90,70,85}, {"冬子",85,80,85,90,95}}; int kamoku; int cmp(const struct seiseki *a, const struct seiseki *b) { int t = a->order[kamoku] - b->order[kamoku]; return (t==0)?0:(t>0?1:-1); } int main() { int i, array_size = sizeof(seito)/sizeof(*seito); char s_kamoku[6][10] = {"国語","算数","理科","社会","英語","合計"}; for(i=0; i<array_size; i++) { seito[i].order[5] = seito[i].order[0] + seito[i].order[1] + seito[i].order[2] + seito[i].order[3] + seito[i].order[4]; printf("%s,%3d,%3d,%3d,%3d,%3d,%4d\n", seito[i].name, seito[i].order[0], seito[i].order[1], seito[i].order[2], seito[i].order[3], seito[i].order[4], seito[i].order[5]); } for(kamoku=5; kamoku>=0; kamoku--) { printf("\n%sの点数で並び替え\n", s_kamoku[kamoku]); qsort(seito, array_size, sizeof(*seito), (int (*)(const void*, const void*))cmp ); for(i=0; i<array_size; i++) { printf("%s,%3d,%3d,%3d,%3d,%3d,%4d\n", seito[i].name, seito[i].order[0], seito[i].order[1], seito[i].order[2], seito[i].order[3], seito[i].order[4], seito[i].order[5]); } } return 0; } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch