5教科の点数の合計と平均を表示するプログラム

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
kerotan0820

5教科の点数の合計と平均を表示するプログラム

#1

投稿記事 by kerotan0820 » 15年前

今、学校で中間テストが終わったので5教科の合計と平均を出すプログラムを作ろうと思い、自分にある知識で組んだところ以下のようになりました
#include<stdio.h>
int main(void){
    int a,b,c,d,e,f,g;
  int k=5;
  double h;
	printf("国語,数学,理科,社会,英語の点数を改行して入力し,Enterを押してください\n");
	scanf("%d" ,&a);
	scanf("%d" ,&b);
	scanf("%d" ,&c);
	scanf("%d" ,&d);
	scanf("%d" ,&e);
	f=a+b+c+d+e;
	h=f/k;
	printf("合計:%d\n" ,f);
	printf("平均:%d\n" ,h);
	return 0;
}
結果これを実行すると、合計値は普通に表示されるものの、平均が"0"と表示されてしまいます;
どうすれば正しい数値が表示されるのでしょうか
教えてください。

Re:5教科の点数の合計と平均を表示するプログラム

#2

投稿記事 by » 15年前

hの型はdouble型ですから、int型の出力方法とは異なります。

%d => %f に修正してみてください。

non

Re:5教科の点数の合計と平均を表示するプログラム

#3

投稿記事 by non » 15年前

double h;
なので、
printf("平均:%d\n" ,h);

%fにします。
また、
h=f/k;
は、
h=(double)f/k;
のようにキャストした方がいいですね。
このままでは、小数点以下の計算ができません。

kerotan0820

Re:5教科の点数の合計と平均を表示するプログラム

#4

投稿記事 by kerotan0820 » 15年前

■わ様 non様
回答ありがとうございました
無事成功しました^^

閉鎖

“C言語何でも質問掲示板” へ戻る