• ベストアンサー

Cでのデータ処理

itohhの回答

  • ベストアンサー
  • itohh
  • ベストアンサー率45% (210/459)
回答No.3

こんにちは。itohhといいます。 C言語の参考書はお持ちですか? 1冊は購入をお勧めします。 ファイルの入出力関係の関数はご存じでしょうか? fopen,fclose,fgets,fprintfなどです。(まだまだ沢山ありますが...) 本来は、ご自身で書いたソースを載せて判らないところを質問するのが良いのではない でしょうか? 基本的なパターンでは。 (1)入力ファイルのオープン。 (2)出力ファイルのオープン。 (3)以下の処理を入力ファイルの最後まで繰り返す。(3-3まで) (3-1)入力ファイルから1行読み込む。 (3-2)読み込んだデータを解析する(”70”が入っているか) (3-3)”70”のとき:出力ファイルに読み込んだデータを出力します。 (4)入力ファイルをクローズします。 (5)出力ファイルをクローズします。 あと、勉強に参考になるサイトを載せておきます。 「猫でもわかるプログラミング 」 URL:http://www.kumei.ne.jp/c_lang/index.html 「Cプログラミング診断室」 URL:http://www.pro.or.jp/~fuji/mybooks/cdiag/index.html 「VC++の使い方」(VC++を使っていなかったらゴメンなさい) URL:http://www.nitoyon.com/vc/

関連するQ&A

  • (EXCEL)重複したデーターの抽出について

    EXCEL2003 シート「sheet1」に下記のようなデーターがあります。 <sheet1>   A   B   C  D 1 りんご 青森 AAA BBB 2 みかん 愛媛 CCC DDD 3 みかん 青森 AAA BBB 4 りんご 青森 AAA BBB 5 みかん 愛媛 CCC DDD A列とB列が同じ値のものをシート「sheet2」に重複しているデーター は1行だけになり、E列にカウントした数が入力されるようにしたいです。 (C列やD列は同じ値でなくてもA列とB列が同じ値の時にカウントして抽出したいです) <sheet2>   A   B   C  D   E  りんご 青森 AAA BBB  2  みかん 愛媛 CCC DDD  2   ご教示のほどお願いします。

  • 【エクセル】空セルを埋める方法

    お世話になります。 下記のような表があります。 1行目:AAA,BBB,CCC,DDD 2行目:空セル,BBB,CCC,DDD 3行目:空セル,BBB,CCC,DDD 4行目:aaa,BBB,CCC,DDD 5行目:空セル,BBB,CCC,DDD ・・・ こんなパターンの行が結構あります。 空セル部分を下記のように埋めたいのですが 1行目:AAA,BBB,CCC,DDD 2行目:AAA,BBB,CCC,DDD 3行目:AAA,BBB,CCC,DDD 4行目:aaa,BBB,CCC,DDD 5行目:aaa,BBB,CCC,DDD てっとり早く埋める方法ありませんか? いまは、【ctrl+↓】 ⇒【↑】⇒【ctrl+D】を延々繰り返しています。 宜しくお願いいたします。

  • C言語による「テキストファイルの読み書き(fprintf)」について

    C言語による「テキストファイルの読み書き(fprintf)」について質問です ずぶの初心者ですが、既知のファイルの1行目に指定した文字列を付加させるプログラムを作りたいと思っています。 以下のように作りました。 ------------------------------------------------------------ #include <stdio.h> int main(void) { FILE *fp; fp = fopen("test.csv","r+"); fprintf(fp,"コントロールカラム1,コントロールカラム2,・・・(略)・・・,コントロールカラム56\n"); fclose(fp); return 0; } ------------------------------------------------------------ このとき「test.csv」の内容が以下のようであったとします。(容量は1MBくらいです。) 001,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj この状態でプログラムをコンパイルして実行すると、「test.csv」の内容が以下のようになってしまいます。(一行目が消える) AAA,BBB,CCC,DDD,EEE 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj またcsvの行が増える度に妙な挙動になっていきます・・・(一行あいたり、先頭行が5行ほど消えたり) 希望する動作としては コントロールカラム1,コントロールカラム2,・・・(略)・・・,コントロールカラム56 001,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj 002,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj ~(略) 5000,aaa,bbb,ccc,ddd,eee,fff,ggg,hhh,iii,jjj のようになるようにしたいのですがどのようにすればよいのでしょうか。 よろしくお願いします。 (使用ソフト:Borland C++ Compiler, Cpad) 参考にしたサイトの項目:http://homepage3.nifty.com/mmgames/c_guide/17-01.html

  • Excel表を集計するプログラム

    A列に複数の項目(重複もあり)があります。B列に数字が入っています。 A列の項目で重複しているものはMergeします。 それと同時にB列に入っていた数字を合計したいと思っています。 [具体例] 処理前  →  処理後 AAA 1     AAA 7 BBB 3     BBB 7 CCC 4     CCC 4 BBB 4     DDD 2 DDD 2 AAA 5 AAA 1 こんな感じの処理をVBAでしたいと思っています。 教えてください。 よろしくお願いいたします。

  • 特定データの取り出しについて

    どうしても処理がわからなかったのでご教授頂けたら幸いです。 掲示板にて特定記事の上位表示固定の処理をしたいのです。 参考データ ----------------- No Name Date ----------------- 1 aaa 111 2 bbb 222 3 ccc 333 4 ddd 444 5 eee 555 ----------------- というテーブルデータがあったとして、 例えば、2番の記事を上位に表示したい場合は 掲示板上の表示で下記のようにしたいのです。 2.bbb > 222 1.aaa > 111 3.ccc > 333 4.ddd > 444 5.eee > 555 といったように2をきちんと切り抜いた状態です。 よろしくお願いいたします

    • ベストアンサー
    • MySQL
  • データの列を15行毎に平均する

    エクセルで質問です 下記のように集計したいのですが、よいアドバイスをいただけないでしょうか 又はVBAでないと無理でしょうか あまり詳しくありませんのでよろしくお願いします。 <データ>       <集計>    1 aaa bbb ccc    1~15行の平均 2 bbb ccc ddd    16~30行の平均 3 ccc ddd eee     ・ 4 ・  ・  ・      ・ 5 ・  ・  ・      ・ ↓ ・  ・  ・      ・ 15 ・  ・  ・      ・ 16 ・  ・  ・      ・ ↓ ・  ・  ・      ・ 30 ・  ・  ・      ・

  • 一覧表よりデータ条件抽出

    教えてください。 下記データ表があります。    A     B      C 1  12/1  AAA  94.1% 2  12/2  BBB  95.6% 3  12/2  BBB  (空白) 4  12/3  CCC  97.3% 5  12/4  DDD  98.4% 6  12/5  EEE  97.3% ・したいこと条件説明 12/2~12/4のデータのみを抽出 %の(空白)セル(行)は抽出しない 日付(A列)は表示しない ・表示結果    A    B 1  BBB  95.6% 2  CCC  97.3% 3  DDD  98.4% としたいのですが・・・ いろいろ試してみましたが、うまくいきません。 よろしく、ご教授のほどお願いします。

  • CSVファイルをperlプログラムで処理する場合

    すみません、度々perl初心者のものです。 CSVファイルを1行ずつ読み込んで処理をしたい場合、 1項目内のデータの中に改行がある場合、 どのような方法で対処出来るでしょうか? 例えば "aaa,bbb,ccc ddd,eee,fff" 上記のようにcccとdddの間に改行が入ってるため 本当は1レコードのはずなのに2レコードとして 処理を行ってしまう。 perlで何かやり方はあるのでしょうか? csvを加工するのもよいのですが、データが多量に あるため、プログラム上でなんとかしたいと思うのですが。。。 すみません、宜しくお願い致します。

    • ベストアンサー
    • Perl
  • エクセル 一連のデータを任意の範囲で順位付けしたい

    エクセルで、一つの列に並べられたデータを、任意の範囲で順位付けがしたいです。 具体的に説明します。 下記の表のように、A列に任意の文字、B列に数字があります。 A列   B列 AAA   15 AAA   19 BBB   3 BBB   8 BBB   9 BBB   4 BBB   1 DDD   20 DDD   21 DDD   19 この中で、A列の文字が同じものについて、B列の数字の順位をC列に表現したいです。理想の結果としては、下記の表になります。 ランク関数を使えばよいのは分かりますが、任意の範囲を指定する方法が分からなく、かつデータ量が膨大(10000行程度)であるため、悩んでいます。よろしくお願いします! A列   B列   C列 AAA   15   2 AAA   19   1 BBB   3    4 BBB   8     2 BBB   9     1 BBB   4     3 BBB   1     5 DDD   20   2 DDD   21   1 DDD   19   3

  • エクセルの文字処理

    以前に同じ様な質問があったかも知れませんが、探しきれなかったので教えてください。 A1~A4の4つのセルに以下のスペースが入った文字列が入っていた場合 A1|AAA A2|AAA BBB A3|AAA BBB CCC A4|AAA BBB CCC DDD    A   B   C   D  1|    AAA 2|AAA BBB 3|AAA BBB CCC 4|AAA BBB CCC DDD という具合にしたいのです。 条件は  ・セル内にスペースで区切られない文字列があった場合には、B列に入れる  ・それ以外はスペースで区切って、A列B列C列D列に入れる  ・文字数は3文字固定ではなく全角半角が混在 以上です。すいません宜しく願いします。