その時に計算プログラムも付けてみました。
印刷してから気づいたけど、少し間違ってる...return 0;してないとか。
というわけでそのソースコードを晒してみます。
[tabs][tabs:修正版]
#include
/*式量*/
#define CH3COOH 60
#define COOH2_2H2O 126
/*食酢を何倍に薄めるか*/
#define DILUTE_RATIO 10
/*食酢の密度(g/mL)*/
#define VINEGAR_DENSITY 1.00
/*用いるシュウ酸水溶液の濃度(mol/L)
計算によって求める場合は定義しない*/
#define OXALIC_ACID_CON 0.0500
/*滴定を行う回数*/
#define TITRATION_NUM 3
/*滴定時にコニカルビーカーに最初に入れる水溶液の体積(mL)*/
#define FIRST_VOLUME 10
int main(void) {
double first,last; /*滴定開始時と終了時の目盛*/
double mCOOH2; /*シュウ酸二水和物の質量*/
double vH2O; /*シュウ酸水溶液用の水の体積*/
double cCOOH2; /*シュウ酸水溶液の濃度*/
double cNaOH,vNaOH; /*水酸化ナトリウム水溶液の濃度と体積*/
double cCH3COOH; /*酢酸水溶液の濃度*/
double vinegar_mol_c; /*食酢のモル濃度*/
double vinegar_percent_c; /*食酢の質量パーセント濃度*/
int i;
printf("注意:有効数字は手動で修正してください。\n");
/*シュウ酸水溶液の調製*/
#ifdef OXALIC_ACID_CON
/*シュウ酸水溶液の濃度が与えられている場合はその値を使う*/
cCOOH2=OXALIC_ACID_CON;
#else
printf("シュウ酸水溶液の調製を行います。\n");
printf("シュウ酸二水和物の質量(g)を入力してください。\n");
scanf("%lf",&mCOOH2);
printf("加える水の体積(L)を入力してください。\n");
scanf("%lf",&vH2O);
cCOOH2=mCOOH2/COOH2_2H2O/vH2O;
#endif
printf("シュウ酸水溶液の濃度は%fmol/Lです。\n",cCOOH2);
/*水酸化ナトリウム水溶液の濃度の測定*/
printf("水酸化ナトリウム水溶液の濃度の測定を行います。\n");
printf("%d回滴定を行います。\n",TITRATION_NUM);
vNaOH=0;
for(i=1;i
/*式量*/
#define CH3COOH 60
#define COOH2_2H2O 126
/*食酢を何倍に薄めるか*/
#define WEAK_RATIO 10
/*食酢の密度(g/mL)*/
#define VINEGAR_DENSITY 1.00
/*用いるシュウ酸水溶液の濃度(mol/L)
計算によって求める場合は定義しない*/
#define OXALIC_ACID_CON 0.0500
/*滴定を行う回数*/
#define TITRATION_NUM 3
/*滴定時にコニカルビーカーに最初に入れる水溶液の体積(mL)*/
#define FIRST_VOLUME 10
int main(void) {
double first,last; /*滴定開始時と終了時の目盛*/
double mCOOH2; /*シュウ酸二水和物の質量*/
double vH2O; /*シュウ酸水溶液用の水の体積*/
double cCOOH2; /*シュウ酸水溶液の濃度*/
double cNaOH,vNaOH; /*水酸化ナトリウム水溶液の濃度と体積*/
double cCH3COOH; /*酢酸水溶液の濃度*/
double vinegar_mol_c; /*食酢のモル濃度*/
double vinegar_percent_c; /*食酢の質量パーセント濃度*/
int i;
printf("注意:有効数字は手動で修正してください。\n");
/*シュウ酸水溶液の調製*/
#ifdef OXALIC_ACID_CON
/*シュウ酸水溶液の濃度が与えられている場合はその値を使う*/
cCOOH2=OXALIC_ACID_CON;
#else
printf("シュウ酸水溶液の調製を行います。\n");
printf("シュウ酸二水和物の質量(g)を入力してください。\n");
scanf("%lf",&mCOOH2);
printf("加える水の体積(L)を入力してください。\n");
scanf("%lf",&vH2O);
cCOOH2=mCOOH2/COOH2_2H2O/vH2O;
#endif
printf("シュウ酸水溶液の濃度は%fmol/Lです。\n",cCOOH2);
/*水酸化ナトリウム水溶液の濃度の測定*/
printf("水酸化ナトリウム水溶液の濃度の測定を行います。\n");
printf("%d回滴定を行います。\n",TITRATION_NUM);
vNaOH=0;
for(i=1;i<=TITRATION_NUM;i++) {
printf("%d回目の滴定です。\n",i);
printf("滴定開始時の目盛:");
scanf("%lf",&first);
printf("滴定終了時の目盛:");
scanf("%lf",&last);
printf("滴下量は%fmLです。\n",last-first);
vNaOH+=last-first;
}
vNaOH/=TITRATION_NUM;/*平均を求める*/
printf("滴下量の平均は%fmLです。\n",vNaOH);
cNaOH=2*cCOOH2*FIRST_VOLUME/vNaOH;
printf("水酸化ナトリウム水溶液の濃度は%fmol/Lです。\n",cNaOH);
/*食酢中の酸の定量*/
printf("食酢中の酸の定量を行います。\n");
printf("%d回滴定を行います。\n",TITRATION_NUM);
vNaOH=0;
for(i=1;i<=TITRATION_NUM;i++) {
printf("%d回目の滴定です。\n",i);
printf("滴定開始時の目盛:");
scanf("%lf",&first);
printf("滴定終了時の目盛:");
scanf("%lf",&last);
printf("滴下量は%fmLです。\n",last-first);
vNaOH+=last-first;
}
vNaOH/=TITRATION_NUM;/*平均を求める*/
printf("滴下量の平均は%fmLです。\n",vNaOH);
cCH3COOH=cNaOH*vNaOH/FIRST_VOLUME;
printf("うすめた食酢の濃度は%fmol/Lです。\n",cCH3COOH);
/*データ処理*/
vinegar_mol_c=cCH3COOH*WEAK_RATIO;
printf("もとの食酢のモル濃度は%fmol/Lです。\n",vinegar_mol_c);
vinegar_percent_c=CH3COOH*vinegar_mol_c/(1000*VINEGAR_DENSITY)*100;
printf("もとの食酢の質量パーセント濃度は%f%%です。\n",vinegar_percent_c);
}