写着玩,带括号的扩展一下
#include<stdio.h>
#include<string.h>
int main(){
int count = 0, max = 0, i = 0;
char num[20], temp[20], result[20][20];
char ps, md, bet;
printf("请输入字符串:\n");
memset(result, '\0', sizeof(result));
memset(num, '\0', sizeof(num));
memset(temp, '\0', sizeof(temp));
while((bet = getchar()) != '\n'){
if(bet == '+' || bet == '-'){
if(num[0] != '\0'){
strcpy(result[i], num);
i++;
memset(num, '\0', sizeof(num));
}
if(md != '\0'){
result[i][0] = md;
md = '\0';
i++;
}
if(ps != '\0'){
result[i][0] = ps;
ps = '\0';
i++;
}
ps = bet;
count = 0;
}else if(bet == '*' || bet == '/'){
if(num[0] != '\0'){
strcpy(result[i], num);
i++;
memset(num, '\0', sizeof(num));
}
if(md != '\0'){
result[i][0] = md;
md = '\0';
i++;
}
md = bet;
count = 0;
}else{
num[count] = bet;
count++;
}
}
if(num[0] != '\0'){
strcpy(result[i], num);
i++;
memset(num, '\0', sizeof(num));
}
if(md != '\0'){
result[i][0] = md;
md = '\0';
i++;
}
if(ps != '\0'){
result[i][0] = ps;
ps = '\0';
i++;
}
max = i;
for(i = 0; i < max; i++)
printf(" | %s", result[i]);
printf(" | ");
return 0;
}