91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

設計一個模擬計算器的程序,要求能對包含加、減、乘、除、括號運算符及SQR和ABS函數的任意整型表達式進行求解。 要求:要檢查有關運算的條件,并對錯誤的條件產生報警。

資源截圖

代碼片段和文件信息

#include?“stdio.h“
#include?“stdlib.h“
#include?“math.h“
#define?Max?100
int?check(char?str[])
{
????int?i=0j=1;
????char?c;
????c=str[i];
????i++;
????while(c!=‘\0‘&&j==1)
????{
????????switch(c)
????????{
????????case?‘+‘:
????????case?‘-‘:
????????case?‘*‘:
????????case?‘/‘:
????????case?‘(‘:
????????case?‘)‘:
????????case?‘0‘:
????????case?‘1‘:
????????case?‘2‘:
????????case?‘3‘:
????????case?‘4‘:
????????case?‘5‘:
????????case?‘6‘:
????????case?‘7‘:
????????case?‘8‘:
????????case?‘9‘:
????????case?‘a‘:
????????case?‘s‘:
????????????j=1;
????????????break;
????????default?:
????????????j=0;
????????}
????????c=str[i];
????????i++;
????}
????i--;
????if(str[i]==‘\0‘&&j==1)
????????return?1;
????else
????????return?0;
}
int?PP_KH(char?str[])
{
????struct
????{
????????char?data[Max];
????????int?top;
????}sta;
????int?i=0;
????sta.top=-1;
????while(str[i]!=‘\0‘)
????{
????????if(str[i]==‘(‘)
????????{
????????????sta.top++;
????????????sta.data[sta.top]=str[i];
????????????i++;
????????}
????????else?if(str[i]==‘)‘)
????????????{
????????????????sta.top--;
????????????????i++;
????????????}
????????else
????????????i++;
????}
????return?sta.top;
}
void?menu()
{
????printf(“\t\t\t------------------------------------\n“);
????printf(“\t\t\t|------------歡迎使用!------------|\n“);
????printf(“\t\t\t|--說明:--------------------------|\n“);
????printf(“\t\t\t|------1.絕對值用a()表示;---------|\n“);
????printf(“\t\t\t-------2.平方根用s()表示;----------\n“);
}
int?count(char?exp[])
{
????struct
????{
????????int?data[Max];
????????int?top;
????}op;
????char?c;
????int?i=0;
????int?k;
????op.top=-1;
????c=exp[i];
????i++;
????while(c!=‘\0‘)
????{
????????switch(c)
????????{
????????case?‘+‘:
????????????op.data[op.top-1]=op.data[op.top]+op.data[op.top-1];
????????????op.top--;
????????????break;
????????case?‘-‘:
????????????op.data[op.top-1]=op.data[op.top-1]-op.data[op.top];
????????????op.top--;
????????????break;
????????case?‘*‘:
????????????op.data[op.top-1]=op.data[op.top-1]*op.data[op.top];
????????????op.top--;
????????????break;
????????case?‘/‘:
????????????if(op.data[op.top]==0)
????????????????{
????????????????????printf(“\n“0”不能作除數!“);
????????????????????exit(0);
????????????????}
????????????else
????????????{
????????????????op.data[op.top-1]=op.data[op.top-1]/op.data[op.top];
????????????????op.top--;
????????????}
????????????break;
????????case?‘a‘:
????????????op.data[op.top]=abs(op.data[op.top]);
????????????break;
????????case?‘s‘:
????????????if(op.data[op.top]<=0)
????????????{
????????????????printf(“根號下的數不能小于“0”;“);
????????????????exit(0);
????????????}
????????????else
????????????????op.data[op.top]=sqrt(op.data[op.top]);
????????????break;
????????default:
????????????k=0;
????????????while(c>=‘0‘&&c<=‘9‘)
????????????{
????????????????k=10*k+c-‘0‘;
????????????????c=exp[i];
????????????????i++;
???

評論

共有 條評論