検索結果 4 件
- 6年前
- フォーラム: C言語何でも質問掲示板
- トピック: 質問です
- 返信数: 6
- 閲覧数: 3713
Re: 質問です
整数型変数 x に 13.500000 という実数は 入りっこなく 13 がはいりますよ。 それを double にキャストしても 、「13.000000」ですよね! 実数型変数 を使わないといけません。 printf に直接書いたときは 実数にキャストされた状態(2.0があるから)問題ないですよ。 #include <stdio.h> int main(void) { int a,b,c,x; // 整数型 float dx; // 実数型 printf("台形の面積を求めます: "); printf("上辺 = "); scanf("%d",&a); printf("下辺 = "); s...
- 6年前
- フォーラム: C言語何でも質問掲示板
- トピック: 質問です
- 返信数: 6
- 閲覧数: 3713
質問です
下記のプログラムについて、例えば、上辺=5、下辺=4、高さ=3と入力したとき、答えが「13.500000」と表示されるはずが、「13.000000」と表示されてしまいます。 一番下のprintfに「(a+b)*c/2.0」を直接入力すると正解が表示されます。xに代入するとダメな理由を教えてください。 #include<stdio.h> int main(void) { int a,b,c,x; printf("台形の面積を求めます: "); printf("上辺 = "); scanf("%d",&a); printf("下辺 = "); scanf("%d",&b); printf("高さ ...