ぼるじょあがC/C++の宿題を片づけますYO! 68代目
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
900: ◆ob60wHXQlc 08/05/28 09:57:39 >>883 100個の数字が入ったファイルが2つ用意されるので、 それを合わせて昇順にソートして、 新しいファイルに書き込むというものです。 ファイルはいっきに読み込まず、1レコードずつです。 よろしくお願いします。 901:デフォルトの名無しさん 08/05/28 10:09:06 >>899 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6694.c 902:デフォルトの名無しさん 08/05/28 10:12:33 [1] 授業単元: C [2] 問題文: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6689.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Cygnus [3.3] 言語: C [4] 期限: 今週 [5] その他の制限: 配列を使用 お願いします。。。 903:デフォルトの名無しさん 08/05/28 10:14:02 >>901 ありがとうございますっ 904:ぼるじょあ ◆yBEncckFOU 08/05/28 10:31:25 >>882 (・3・) エェー こんなもん? #include<stdio.h> #include<stdlib.h> #define DATA_NUM_MAX (100*2) int compare(const unsigned short *a, const unsigned short *b){ if(*a>*b) return 1; if(*a<*b) return -1; return 0; } int main(int argc, char *argv[]){ FILE *fp_in, *fp_out; unsigned short data[DATA_NUM_MAX]; int i, data_num=0; if(argc!=4){ printf("Usage: ./a.out filename[in] filename[in] filename[out]\n"); return 0; } for(i=0;i<2;i++){ if((fp_in=fopen(argv[i+1], "r"))==NULL) return 1; for(;data_num<DATA_NUM_MAX;data_num++) if(fscanf(fp_in, "%hu", &data[data_num])!=1) break; fclose(fp_in); } qsort(data, data_num, sizeof(data[0]), (int (*)(const void *,const void *))compare); if((fp_out=fopen(argv[3], "w"))==NULL) return 2; for(i=0;i<data_num;i++) fprintf(fp_out, "%hu\n", data[i]); return 0; }
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4358日前に更新/401 KB
担当:undef