データ入出力
C言語のデータ入出力
データ入出力関数 | 機能 |
printf("書式",入力変数列) | データ入力 |
scanf("書式",&ポインタ出力変数列) | データ出力 |
C++言語のデータ入出力
関数 | 機能 |
cin >> 変数・配列名 >> 変数・配列名 | データ入力 |
cout << 変数・配列名 << 変数・配列名 | データ出力 |
データの出力形式
入出力データ書式 | データ型機能 | 例 | 出力例 |
%d, %pd | int型 | %d, %4d | 123, 凵123 |
%f, %p.qf | float型 | %f, %7.3f | 123.345, 凵12.345 |
%lf, %p.qlf | double型 | %lf, %7.3lf | 123.345, 凵12.345 |
%c, %s | char型 | %c, %s | a, a |
C++言語の入出力ライブラリiomanip.h
関数 | 機能 |
setw(p) | 出力桁数p |
setprecision(p) | 小数点以下の桁数p |
setioflags(ios::fixed) | 固定小数点設定 |
resetiosflags(ios::fixed) | 固定小数点解除 |
setioflags(ios::scientific) | 指数形式設定 |
resetiosflags(ios::scientific) | 指数形式設定 |
C++言語の入出力ライブラリfstream.h
関数 | 機能 |
ifstream fin("file name") | 入力ファイル設定 |
fin.get(char) | 1文字読込み |
fin.eof() | ファイル終端判定 |
fin.close() | 入力ファイルクローズ |
ofstream fout("file name") | 出力ファイル設定 |
fout.get(char) | 1文字読込み |
fout<<char | 1文字書込み |
fout.close() | 出力ファイルクローズ |
C++言語サンプルプログラム
#include <iostream>
#include <iomanip>
#include <fstream>
#include <stdlib.h>
#include <math.h>
using namespace std;
int main(){
int i=0;
double x[50],y;
double pi=acos(-1.0); //円周率
ifstream fin("input.txt"); //入力ファイルオープン
if( !fin ){
cout << "There is NOT a file.\n";
exit(0);
}
while( !fin.eof() ){
fin >> x[i]; //ファイルから配列へ読込み
cout << x[i] << endl ;
i++;
}
fin.close(); //入力ファイルクローズ
ofstream fout("output.csv"); //出力ファイルオープン
cout<<setprecision(4)<<setiosflags(ios::fixed);
fout<<setprecision(5)<<setiosflags(ios::fixed);
for(i=0;i<=20;i++){
y=sin(x[i]); //正弦関数計算
cout<<setw(14)<<x[i]<<setw(14)<<y<<endl;
fout<<setw(15)<<x[i]<<","<<setw(15)<<y<<endl;
}
fout.close(); //出力ファイルクローズ
return 0;
}
input.txt入力ファイルは,Visual Studio 2010 Expressのプロジェクトファイル名と同じフォルダ名の下に設置します.ここに出力ファイルも出力されます.
Debugフォルダの下ではないので注意します.
input.txt入力ファイル
0.00000
0.31416
0.62832
0.94248
1.25664
1.57080
1.88496
2.19911
2.51327
2.82743
3.14159
3.45575
3.76991
4.08407
4.39823
4.71239
5.02655
5.34071
5.65487
5.96903
6.28319
コンソール出力結果
0
0.31416
0.62832
0.94248
1.25664
1.5708
1.88496
2.19911
2.51327
2.82743
3.14159
3.45575
3.76991
4.08407
4.39823
4.71239
5.02655
5.34071
5.65487
5.96903
6.28319
0.0000 0.0000
0.3142 0.3090
0.6283 0.5878
0.9425 0.8090
1.2566 0.9511
1.5708 1.0000
1.8850 0.9511
2.1991 0.8090
2.5133 0.5878
2.8274 0.3090
3.1416 0.0000
3.4558 -0.3090
3.7699 -0.5878
4.0841 -0.8090
4.3982 -0.9511
4.7124 -1.0000
5.0266 -0.9511
5.3407 -0.8090
5.6549 -0.5878
5.9690 -0.3090
6.2832 0.0000
output.csv出力ファイル
0.00000, 0.00000
0.31416, 0.30902
0.62832, 0.58779
0.94248, 0.80902
1.25664, 0.95106
1.57080, 1.00000
1.88496, 0.95106
2.19911, 0.80902
2.51327, 0.58779
2.82743, 0.30902
3.14159, 0.00000
3.45575, -0.30902
3.76991, -0.58778
4.08407, -0.80902
4.39823, -0.95106
4.71239, -1.00000
5.02655, -0.95106
5.34071, -0.80902
5.65487, -0.58778
5.96903, -0.30901
6.28319, 0.00000