Как запретить пользователям вводить более 2 знаков после запятой в языке C
Например, это не допускается 2.00000 из-за его более чем 2. d. p, но это 2.00
У меня есть код ниже, который разбивает значение и только как .000 или .00 зависит от числа. И я думал о том, чтобы создать такое условие, как если бы оно было больше 99 .
Но это не работает
Что я уже пробовал:
int Substring(char string[]) { int i; int lengt; int index; //char string[5], char sub[1000]; int position, length, c = 0; //printf("Input a string\n"); //gets(string); printf("%s",string); lengt=strlen(string); for(i=1;i<lengt;i++) { // if("."==string) // { //printf("error please re-type your value with a dot\n"); //break; //} if('.'==string[i]) { index=i; printf("%d : %d \n",index,lengt); //break; } } //printf("%d",lengt); position=index; length=lengt; //printf("Enter the position and length of substring\n"); //scanf("%d%d", &position, &length); while (c < length) { sub[c] = string[position+c]; c++; } sub[c] = '\0'; printf("Required substring is \"%s\"\n", sub); system("pause"); return 0; }