2014-02-09 4 views
0

Я хочу, чтобы пользователь вводил число (float), но я хочу сохранить строку символов, которая в то же время хранится в массиве и фактическом номере, без запроса пользователя для ввода дважды.Ввод один раз для двух разных типов переменных в C

Кстати, если бы вы могли сказать мне, как закончить программу, если строка «e».

+2

Можете ли вы показать нам, что вы пробовали до сих пор? – Onyxite

+0

И, может быть, вы хотите, чтобы ваши туфли тоже полировали, а мы на нем? –

ответ

2

Для этого вам необходимо прочитать последовательность символов в строке, а затем самостоятельно проанализировать строку. Вы можете сделать это либо с sscanf, либо с atof.

1

Вы можете прочитать в переменную поплавка, а затем записать значение с плавающей точкой в ​​буфер строк следующим образом:

float f = 0.0f; 
char f_buf[100] = ""; 
scanf("%f", &f); 
snprintf(f_buf, 100, "%f", f); // write float value in a string 
// Now print both 
printf("f_buf = %s, f = %f", f_buf, f); 
Смежные вопросы