Especificador de formato flutuante dinâmico em C
-
09-12-2019 - |
Pergunta
Existe alguma maneira de ter um especificador de formato flutuante inserido pelo usuário?Por exemplo, se eu imprimir this.
float c = 15.0123
printf("%.2f", c);
// outputs: 15.01
Como posso atribuir o número de casas decimais a uma variável?Como:
int n = 3;
float c = 15.0123
printf("%.(%i)f", n, c);
// outputs: 15.012
Solução
A precisão pode ser especificada por um argumento com o asterisco *
.Isso é chamado de precisão fornecida por argumento.
float c = 15.0123;
int m = 2;
printf("%.*f", m, c);
Outras dicas
printf("%.*f", n, c);
que imprimirá c com n casas após o decimal.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow