プログラムに小数を入力しようとしていますが、別の出力が得られます。%5.2f、float、および double を使用しましたが、まだ機能しません。円の直径、面積、円周を計算したいのですが、出力が異なります。
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<ctype.h>
int main(int argc, char**argv)
{
double radius;
double pi = 3.14;
double diameter;
double area;
double circumference;
printf("\t\tEnter value for radius: ");
scanf_s("%5.2f", &radius);
printf("radius is %5.2f", radius);
diameter = radius*2;
area = pi*(radius*radius);
circumference = 2*(pi*radius);
printf("\n\t\tThe diameter of the circle is %d \n", diameter);
printf("\t\tArea: %d", area);
printf("\t\tCircumference: %d", circumference);
getch();
return 0;
}
私の間違いを教えてください。また、数学定数を持つために M_PI を使用しようとしましたが、うまくいきません。