1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
#include <string.h> #include <ctype.h> #define MAXN 100 int exp[MAXN]; int num[MAXN]; int top = 0; char str[MAXN];
int (int a, int b) { int ret = 1; while(b) { if(b&1) ret = ret*a; a = a*a; b >>= 1; } return ret; }
int main() { scanf("%s",str); int len = strlen(str); char *p = str; while(*p) { num[top] = atoi(p); while(*p++ != '^'); exp[top++] = atoi(p); while(isdigit(*p)) p++; while(!isdigit(*p) && (*p) != '
|
近期评论