这是我的问题:我必须阅读 +x 或 *x 两种短语中的一种,然后我必须使用我刚刚阅读的那个操作。就像,假设我计算了一些平均数,然后我读了+3,所以现在的平均值将是+3,与我设法完成加号部分的*函数相同,这是我的真正丑陋(但工作)它的代码:
char c=0;
char tempchar=0;
char sign=0;
printf("enter a character\n");
while (c!= '\n' && c!=EOF)
{
tempchar=c;
c = getchar();
if (c=='+' || c=='*')
sign = c;
if (c=='\n' || c==EOF)
{
c=tempchar;
break;
}
}
if (sign == '+')
avg = avg + (c-'0');
所以,+一有效。但是对于 * 选项,我只得到我输入的最后一个字符(例如,如果我输入 *1.2,我会得到 * 和 2)所以......我怎样才能让它得到 * 和整数?
谢谢!