1.Getnumber()
将数字字符串转化为整型数字:
int Getnumber(char* arr)
{
int n = (int)strlen(arr);
int i = 0;
int sum = 0;
for (i = 0; i < n; i++)
{
sum = sum * 10 + (arr[i] - '0');
}
return sum;
}
int main()
{
char arr[100] = "199";
int m = (int)strlen(arr);
int d = 0;
d = Getnumber(arr);
printf("%d", d);
return 0;
}
2.Compare()
两个算数运算符进行比较,返回运算符优先级较高的那一个;
char Compare(char c, char d)
{
switch (c)
{
case '+':
{
if (d == '-')
{
return c;
}
else
{
return d;
}
break;
}
case '-':
{
if (d == '+')
{
return c;
}
else
{
return d;
}
break;
}
case '*':
{
return c;
break;
}
case '/':
{
return c;
}
default:
{
return 0;
break;
}
}
}
int main()
{
char c,d;
scanf("%c%c", &c,&d);
char str;
str = Compare(c, d);
printf("%c", str);
return 0;
}
运行结果:
3.Execute()
输入两个数字字符,一个运算符,对其进行操作;
int Execute(char a, char b, char c)
{
int m = a - '0';
int n = c - '0';
int sum = 0;
switch (b)
{
case '+':
{
sum = m + n;
return sum;
}
case '-':
{
sum = m - n;
return sum;
}
case '*':
{
sum = m * n;
return sum;
}
case '/':
{
sum = m / n;
return sum;
}
default:
{
return 0;
}
}
}
int main()
{
char a, b, c;
scanf("%c%c%c", &a, &b, &c);
int sum=Execute(a, b, c);
printf("%d\n", sum);
return 0;
}
运行结果: