Вывести число в переменное число десятичных знаков
Я хотел напечатать число с переменным числом десятичных знаков в C. Я написал код
#include<stdio.h>
main()
{ int a;
printf("Upto which number of decimal places you want to print value of '2.554648' ?");
scanf("%d", &a);
printf("Value of '2.554648 upto %d number of decimal places = %.af", a, 2.554648);
return 0;
}
2 ответа
Решение
Использование *
в printf()
чтобы отметить, сколько десятичных разрядов вы хотите:
#include <stdio.h>
int main(void)
{
int a;
printf("Upto which number of decimal places you want to print value of '2.554648' ?");
scanf("%d", &a);
printf("Value of '2.554648 upto %d number of decimal places = %.*f", a, a, 2.554648);
return 0;
}
Вам нужно *
спецификатор формата. Вот короткий пример (см. В идеоне):
#include <stdio.h>
int main(void) {
int a = 5;
double temp = 5.0 / 7;
printf("%.*f",a, temp);
return 0;
}