Добрый день, возник вопрос. Имею код(указал ниже) который число введеное в строку конвертирует в число с плавающей точкой убирая всякие ненужные символы(буквы например) и заменяет запятую на точку чтобы число коректно отображалось. Но я не знаю что делать в случаях если введут например две или больше запятые/точки подряд, потому что тогда конвертируется лишь та часть что будет до запятой. Пример:
Подскажите, как можно сделать замену больше одного символа '.' на один, т.е если я введу >1 точки подряд, то они все заменятся одной точкой?
#include <stdio.h>
#include < stdlib.h >
int main() {
char str[12];
double number = 0;
printf("Enter a number to edit: ");
gets(str);
int i = 0;
printf("Entered number : %s\n", str);
while (str[i] != '\0'){
if (str[i] == ',') {
str[i] ='.';
}
++i;
}
printf("Edited number but not converted: %s\n", str);
number = atof(str);
printf("Edited number %f\n ", number);
return 0;
}