void main()
{
extract();
BinToDec();
}
int BinToDec()
{
int decimal = 0, base = 1, rem, num;
int x = atoi(right);
num = x;
while (x != 0)
{
rem = x % 10;
decimal = decimal + rem*base;
x = x / 10;
base = base * 2;
}
printf("the decimal equivalent of the binary number %d is: %d", num, decimal);
}
void extract()
{
int i;
char foo[29];
printf("Enter the number and opperator\n");
scanf("%s",foo);
int index;
int len = strlen(foo);
for (i = 0; i < len; i++)
{
if (foo[i] == '+' || foo[i] == '-' || foo[i] == '*' || foo[i] == '/' || foo[i] == '%')
{
char op = foo[i];
printf("%c", op);
index = i;
}
}
char left[14];
for (int j = 0; j < index; j++)
{
left[j] = foo[j]);
printf("%c", left[j]);
}
char right[14];
for (int k = index + 1; k < len; k++)
{
right[k] = foo[k];
printf("%c", right[k]);
}
}
}
Мое намерение в этом коде состоит в том, чтобы использовать значения, добавленные в массив «left» и «right» из массива «foo» в функции «extract» и передатьэто в функцию "BinToDec" и сохранить возвращаемое значение в некоторой переменной с именем "десятичная".Это потому, что позже я хочу использовать возвращаемое значение из BinToDec для какой-то другой функции, над которой я работаю.