#include<stdio.h>
#include<math.h>
int main(void){
int n; printf("面積を計算します。\n 1.円\n 2.正方形\n 3.三角形\n 何番の図形にしますか?\n"); scanf("%d",&n); if(n == 1) { double a; float S; const double PI=3.141592653589793; printf("半径aを入力してください\n"); scanf("%lf",&a); S=a*a*PI; printf("面積は%fです",S); } else if(n == 2) { double a; float S; printf("正方形の一辺aを入力してください\n"); scanf("%lf",&a); S=a*a; printf("面積は%fです",S); } else if(n == 3) { double a; float S; printf("正三角形の一辺aを入力してください\n"); scanf("%lf",&a); S=sqrt(3)/4*a*a; printf("面積は%fです",S); } else { printf("入力が不適切でした\n"); } return 0;
}
面積が0になってしまいます。解決方法を教えてください。
ソースコードは下記の方法で入力しましょう
https://teratail.com/help/question-tips#questionTips3-5-1
Cあまり詳しくないけど・・・
C#の知識で行くと、変数宣言がおかしくない?
同じ変数宣言を何度もしている・・・
全部面積がゼロになるのか?1つだけなのか?を明確にしてください。
ソースコード入力方法教えていただきありがとうございます。全部面積が0になります。
コードをコピペして実行したところ、一応、私の環境では0にはならずに正しい計算結果を出しています。
windows10 (1903 osビルド18362.36)
gcc 6.3.0
コマンドプロンプトからexeファイルを実行しました。
回答3件
あなたの回答
tips
プレビュー