Cプログラムで求めた結果をExcelデータファイルとして出力する


今度は,プログラムの出力結果をExcelのcsvデータとして出力する方法について説明する.
以下のプログラムは,先ほどのコマンドラインによってデータを与えたあとに,
プログラムによってデータを処理して,処理されたデータを今度は出力してプログラムが終了する.
以下のプログラムでは,先ほどの36次元の正弦波データを与えると,36次元の余弦波が出力されることになる.

#include<stdio.h>
main()
{
 int i,j;
 double point[36],data[36],data2[36];

 for(i=0;i<36;i++)
  scanf("%lf,%lf",&point[i],&data[i]);

 for(i=0;i<36;i++)
 {
  data2[i] = data[(i + 9) % 36];
  printf("%3.0lf,%7.4lf\n",point[i],data2[i]);
 }
}

実行するときに,入力するCSVデータのファイル名がinput_data.csv,
出力するCSVデータのファイル名をoutput_data.csvとするとき,

./a.out < input_data.csv > output_data.csv

とコマンドラインで入力することによって,実行プログラムの出力結果をExcelデータとして出力できる.
UNIX上で出力されたExcelファイルを確認すると,
テキストでサンプリング値と余弦波データが36個並んでいるのが確認できるだろう.


〒〒639-1080 大和郡山市矢田町22
奈良工業高等専門学校 情報工学科 
教授  松尾 賢一
E-mail:matsuo□info.nara-k.ac.jp
(巡回ロボット対策のため,□を@に変えてください)