Quais são as diferenças entre os especificadores de formato% f,% e% g no idioma c?

% f

detalhes de ponto flutuante: - 1.% f (imprime como ponto flutuante) 2.% 4f (imprime como ponto flutuante com uma largura de pelo menos 4 de largura) 3.%. 4f (imprime como ponto flutuante com precisão de quatro caracteres após o ponto decimal) 4.% 3.2f (imprima como ponto flutuante com pelo menos 3 de largura e precisão de 2)

por exemplo, float a, b, sum; printf ("% f", soma); saída: para entrada a = 5,4, b = 3,2; a soma será 8,6

% g (% G)

flutuar ou usar duas vezes% f ou% e, conforme necessário, depende de qual especificador você vai usar.

% e (% E)

float ou formato exponencial duploeg para imprimir 5e + 7 (grosso modo)

NOTA: E o uso de letras maiúsculas e minúsculas resultará na impressão de letras minúsculas / maiúsculas. E% g é necessário para imprimir grandes conjuntos de dados do tipo float. Obrigado por fazer a pergunta. .

Constantes reais são freqüentemente chamadas de constantes de ponto flutuante. As constantes reais podem ser escritas em duas formas - forma fracionária e forma exponencial. A forma exponencial é normalmente usada se o valor da constante for muito pequeno ou muito grande. No entanto, não nos impede de usar a forma exponencial para outras constantes reais. Agora, se você deseja imprimir a constante de ponto flutuante no formato Fracionário, use% f como especificador de formato e, se quiser imprimi-lo no formato Exponencial, use o especificador de formato% e ou% E. A única diferença entre% e e% E é que eles imprimirão o "e" do formulário exponencial em letras minúsculas e maiúsculas, respectivamente. Mas, se você deseja imprimir a constante de ponto flutuante na forma fracionária quando a constante não é muito grande ou muito pequena e na forma exponencial quando a constante é muito grande ou muito pequena, use% g ou% G como formato

especificador.

A única diferença entre% g e% G é que eles imprimirão o "e" da forma exponencial em letras minúsculas e maiúsculas, respectivamente.

isto

será impressa no formato Fracionário quando a constante estiver entre 0,9999999 e 999999, mas quando a constante não estiver no intervalo, ela será impressa na forma Exponencial.

% f imprime o número correspondente como um número decimal de ponto flutuante (por exemplo, 321.65),% e imprime o número em notação científica (por exemplo, 3.2165e + 2),% g imprime o número na menor dessas duas representações (usando o mesmo número , o ponto flutuante decimal é mais curto e, portanto, 321,65 seria impresso. Um exemplo em que% g imprimiria a notação científica é quando o número for 6000000000. Na notação científica, isso seria 6e + 9, que é mais curto e, portanto, 6e + 9 seria impressa.)

A única diferença entre as letras minúsculas% e,% ge versões maiúsculas% E,% G é que a impressão de notação científica usará E maiúsculo em vez de minúsculo e para indicar o expoente. Por exemplo,% E produz 3,2165E + 2 quando% e produz 3,2165e + 2.

% e (% E) flutuante ou formato exponencial duplo

Este especificador de formato imprime o número em notação exponencial ou científica. Seus tipos de dados suportados são

FLUTUADOR

&

EM DOBRO

Por exemplo: - (1.234e + 2) ou (7.85e + 3)

% f flutuante ou decimal com sinal duplo

Este especificador de formato imprime o número correspondente como um número decimal de ponto flutuante

.

Seu tipo de dados suportado é

FLUTUADOR

Por exemplo: - Qualquer número decimal como (123.46) ou (785.67)

% g (% G) flutua ou usa duas vezes% f ou% e conforme necessário

Este especificador de formato imprime o número correspondente no menor entre dois. Seu tipo de dados suportado é

FLUTUADOR

&

EM DOBRO

Por exemplo: - Nos dois exemplos acima, se eu quiser imprimir o número por meio do especificador de formato% g, seria 123,46, mas não o 1,234e + 2, pois é mais longo.