第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

關(guān)于c的編程(表達(dá)式的求值)急!?。?!

#include<malloc.h> #include<stdio.h> #include<ctype.h>//判斷是否為字符函數(shù)的頭文件? #include<stdlib.h> #define?MAXSIZE?100 typedef?int?boo1; #define?ture?1 #define?false?0 typedef?int?elemtype; char?ch[7]={'+','-','*','/','(',')','#'};//把符號(hào)轉(zhuǎn)換成一個(gè)字符數(shù)組? int?f1[7]={3,3,5,5,1,6,0};//棧內(nèi)元素優(yōu)先級(jí)? int?f2[7]={2,2,4,4,6,1,0};//棧外元素優(yōu)先級(jí)? int?n=0; typedef?struct?sqstack {//順序結(jié)構(gòu) ????elemtype?stack[MAXSIZE]; int?top;? }sqstack; //1.把操作的字符轉(zhuǎn)化成相應(yīng)的字符。? elemtype?cton(char?c) {? switch(c) { case?'+':?return?0;? case?'-':?return?1; case?'*':?return?2; case?'/':?return?3; case?'(':?return?4; case?')':?return?5; default:??return?6; } }? ?//2.按設(shè)定比較兩個(gè)字符的優(yōu)先級(jí)。? ?char?Compare(char?c1,char?c2) ?{ ? int?i1=cton(c1); ? int?i2=cton(c2);//把字符變成數(shù)字? ? if(f1[i1]>f2[i2])??return?'>';//通過原來的設(shè)定找到優(yōu)先級(jí) else?if(f1[i1]<f2[i2])??return?'<'; else?return?'='; }//end?Compare //3.進(jìn)行四則運(yùn)算,并返回計(jì)算結(jié)果。? int?Operate(elemtype?a,elemtype?t,elemtype?b) { int?sum; switch(t) { case?0:?sum=a+b;?break; case?1:?sum=a-b;?break; case?2:?sum=a*b;?break; default:?sum=a/b; } return?sum; ?}? //4.主要的表達(dá)式計(jì)算函數(shù),返回表達(dá)式的計(jì)算結(jié)果。? int?EvaluateExpression() ? char?c; ? int?i=0,sum=0; ? int?k=1,j=1;//設(shè)置了開關(guān)變量? ? elemtype?x,t,a,b; ? sqstack?OPTR,OPND; ? Initstack(&OPTR);//初始化操作符棧 Push(&OPTR,cton('#'));//#符號(hào)壓入操作符棧 Initstack(&OPND);//初始化操作數(shù)棧 c=getchar(); while(c!='#'||ch[Gettop(OPTR)]!='#') { if(isdigit(c)) { sum=0; while(isdigit(c))//判斷c是否為數(shù)字? { if(!j)//j用來進(jìn)行數(shù)字串的轉(zhuǎn)換判斷,j為0轉(zhuǎn)換 { ????sum=sum*10-(c-'0'); }? else?sum=sum*10+(c-'0');//字符c轉(zhuǎn)換成了對(duì)應(yīng)的數(shù)字 ?c=getchar(); }//當(dāng)前c不為數(shù)字,則把之前的數(shù)字串轉(zhuǎn)化成十進(jìn)制數(shù)字再壓棧 Push(&OPND,sum); j=1;? } else?if(k) { switch(Compare(ch[Gettop(OPTR)],c)) { case'<':Push(&OPTR,cton(c));//把字符整型化,然后入操作棧 ????????c=getchar(); break; case'=':Pop(&OPTR,&x);//操作符棧頂元素出棧? ????????c=getchar(); break; case'>':Pop(&OPTR,&t);//操作符棧棧頂元素出棧? Pop(&OPND,&b);//操作數(shù)棧棧頂元素出棧 Pop(&OPND,&a);//操作數(shù)棧棧頂元素出棧 Push(&OPND,Operate(a,t,b)); break; ? } } }//endwhile return(Gettop(OPND));? ???//endEvaluateExpression //5.取棧頂元素 elemtype??Gettop(sqstack?s) {? if(s.top==0) { printf("ERROR,underflow\n");?return?0; } else return?s.stack[s.top]; }??? //6.初始化棧 void?Initstack(sqstack*s) { s->top=0; }? //7.出棧 void?Pop(sqstack*s,elemtype*x) { if(s->top==0) printf("ERROR,Underflow!\n"); else { *x=s->stack[s->top]; s->top--; } } //8.入棧 void?Push(sqstack*s,elemtype?x) { if(s->top==MAXSIZE-1) printf("ERROR,Overflow!\n"); else { s->top++; s->stack[s->top]=x; } }//end?Push //9.若S為空棧,則返回TURE,否則返回FALSE bool?StackEmpty(sqstack?S) { if(S.top==0)?return?ture; else?return?false; } //10.主函數(shù)。設(shè)定界面的顏色大小,調(diào)用計(jì)算模塊函數(shù) main() { int?result; system("color?1f"); system("mode?con:cols=80?lines=35"); printf("************歡迎使用表達(dá)式求值小程序************\n\n"); printf("請(qǐng)輸入您的算術(shù)表達(dá)式(以#號(hào)結(jié)束):"); result=EvaluateExpression(); printf("表達(dá)式的計(jì)算結(jié)果是:%d",result); printf("************感謝您的使用,再見!************\n\n"); // return?0; }這個(gè)編程的第57行一直顯示有2個(gè)錯(cuò)誤和一個(gè)警告,有沒有大神幫我看下!!
查看完整描述

1 回答

?
慕spring

TA貢獻(xiàn)38條經(jīng)驗(yàn) 獲得超4個(gè)贊

在56行加上大括號(hào){ }試試

查看完整回答
反對(duì) 回復(fù) 2017-11-22
  • 1 回答
  • 0 關(guān)注
  • 1200 瀏覽

添加回答

了解更多

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)