日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開(kāi)源 > php教程 > 華為面試題:四則運(yùn)算 C語(yǔ)言源碼

華為面試題:四則運(yùn)算 C語(yǔ)言源碼

來(lái)源:程序員人生   發(fā)布時(shí)間:2015-08-24 07:57:33 閱讀次數(shù):3279次

4則運(yùn)算
描寫:  
請(qǐng)實(shí)現(xiàn)以下接口
    /* 功能:4則運(yùn)算
     * 輸入:strExpression:字符串格式的算術(shù)表達(dá)式,如: "3+2*{1+2*[⑷/(8⑹)+7]}"
         * 返回:算術(shù)表達(dá)式的計(jì)算結(jié)果
     */
    public static int calculate(String strExpression)
    {
        /* 請(qǐng)實(shí)現(xiàn)*/
        return 0;
    }
束縛:
pucExpression字符串中的有效字符包括[‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’。
pucExpression算術(shù)表達(dá)式的有效性由調(diào)用者保證;
 

 
知識(shí)點(diǎn):  棧
題目來(lái)源:  內(nèi)部整理
練習(xí)階段:  中級(jí)
運(yùn)行時(shí)間限制: 10Sec
內(nèi)存限制: 128MByte
輸入: 
輸入1個(gè)算術(shù)表達(dá)式
 
輸出: 
得到計(jì)算結(jié)果
 
樣例輸入: 
3+2*{1+2*[⑷/(8⑹)+7]}

                  
樣例輸出: 
25

#include "stdio.h" #include "stdlib.h" #include "string.h" #define MAX_PATH 256 char stack_all[MAX_PATH] = {0}; char stack_symbol[MAX_PATH] = {0}; char stack_num[MAX_PATH] = {0}; int num_all=0; int num_symbol =0; int num_num = 0; int cal(int a,int b,char op) { switch(op) { case '+': return a+b; case '-': return a-b; case '*': return a*b; case '/': if (b==0) { return 0; } return a/b; default: return 0; } } //有效字符是0⑼ int calculate(char *strExpression) { int length = strlen(strExpression); for (int i=length⑴;i>=0;i--) { char t = strExpression[i]; if(t=='*' || t=='/' || t==')' || t==']' || t=='}') { stack_symbol[num_symbol] = t; num_symbol++; } else if (t=='(') { while(true) { if (stack_symbol[num_symbol⑴]==')') { num_symbol--; break; } stack_all[num_all]=stack_symbol[num_symbol⑴]; num_all++; num_symbol--; } } else if (t=='[') { while(true) { if (stack_symbol[num_symbol⑴]==']') { num_symbol--; break; } stack_all[num_all]=stack_symbol[num_symbol⑴]; num_all++; num_symbol--; } } else if (t=='{') { while(true) { if (stack_symbol[num_symbol⑴]=='}') { num_symbol--; break; } stack_all[num_all]=stack_symbol[num_symbol⑴]; num_all++; num_symbol--; } } else if(t=='+' || t=='-') { while((stack_symbol[num_symbol⑴]=='*' || stack_symbol[num_symbol⑴]=='/') && num_symbol!=0 ) { stack_all[num_all]=stack_symbol[num_symbol⑴]; num_all++; num_symbol--; } stack_symbol[num_symbol] = t; num_symbol++; } else { stack_all[num_all] = t; num_all++; } } for (int i=num_symbol⑴;i>=0;i--) { stack_all[num_all]=stack_symbol[i]; num_all++; } for (int i=0;i<num_all;i++) { char t = stack_all[i]; if (t>='0'&&t<='9') { stack_num[num_num]=t-'0'; num_num++; } else { stack_num[num_num⑵] = cal(stack_num[num_num⑴],stack_num[num_num⑵],t); num_num--; } } return (int)stack_num[0]; } void init(char *buffer,char *buffer2) { int length = strlen(buffer); int k = 0; for (int i=0;i<length;i++) { char t = buffer[i]; if (t=='+'||t=='-') { if(i>=1 && (buffer[i⑴]=='(' || buffer[i⑴]=='[' || buffer[i⑴]=='{')) { //可以不使用括號(hào) // buffer2[k]='0'; // k++; // buffer2[k]=buffer[i]; // k++; buffer2[k]='('; k++; buffer2[k]='0'; k++; buffer2[k]=buffer[i]; k++; buffer2[k]=buffer[i+1]; i++; k++; buffer2[k]=')'; k++; } else { buffer2[k]=buffer[i]; k++; } } else { buffer2[k]=buffer[i]; k++; } } } /* 2 3 4 6 8 10 特比注意:負(fù)數(shù)需要補(bǔ)0為0-正數(shù)。 */ int main() { int m=0,n=0; char buffer[MAX_PATH] = {0}; gets(buffer); // char buffer[MAX_PATH] = "3+2*{1+2*[⑷/(8⑹)+7]}"; char buffer2[MAX_PATH] = {0}; init(buffer,buffer2); // printf(buffer2); // printf(" "); int ret = calculate(buffer2); // printf(stack_all); // printf(" "); printf("%d",ret); return 0; }


 

 

生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 看a网站| 精品国产一区二区三区免费 | 国产福利91精品一区二区三区 | 亚洲精品不卡 | 欧美精品一级二级三级 | 国产精品久久久久久久久久尿 | 久久久久久91 | 亚洲精品欧美一区二区三区 | 久久久久久亚洲精品 | 欧美日韩精品免费观看视频 | 国产日韩一区二区三区 | 偷拍亚洲 | 日本一区不卡视频 | 成人午夜小视频 | 欧美日本韩国一区二区三区 | 国产黄色在线 | 91精品国产91久久久久久吃药 | 久久欧美肥婆一二区 | 国产精品一区二区三区四区 | 成人在线免费视频观看 | 欧美一级欧美三级 | 涩爱av一区二区三区 | 亚洲欧美日韩国产 | 免费观看高清韩国日本大全 | 精品在线免费观看 | 久久99精品久久久久久久青青日本 | 黄色激情视频在线观看 | 日韩一区二区三区精品 | 国产精品一区二区三区久久久 | 黄色一及视频 | 51av在线 | 国产精品日韩av | 99re视频在线 | 久久免费视频网 | 一区免费观看 | 999免费观看视频 | 成人av在线网站 | 超碰网址 | 亚洲精品一区二区三区在线 | 国产精品18hdxxxⅹ在线 | 久久国产精品影视 |