解析字串算式

2021-09-01 22:45:06 字數 1197 閱讀 5246

題目:

通過鍵盤輸入100以內正整數的加、減表示式,請編寫乙個程式輸出運算結果字串。

輸入字串的格式為:「運算元1 運算子運算元2」,「運算元」與「運算子」之間以乙個空格隔開。

補充說明:

1. 運算元為正整數,不需要考慮計算結果溢位的情況。

2. 若輸入算式格式錯誤,輸出結果為「0」。

要求實現函式:

void arithmetic(const char *pinputstr, long linputlen, char*poutputstr);

【輸入】pinputstr: 輸入字串

linputlen: 輸入字串長度

【輸出】poutputstr: 輸出字串,空間已經開闢好,與輸入字串等長;

【注意】只需要完成該函式功能演算法,中間不需要有任何io 的輸入

輸出示例

輸入:「4 + 7」 輸出:「11」

輸入:「4 - 7」 輸出:「-3」

輸入:「9 ++ 7」 輸出:「0」 注:格式錯誤

程式:

#include "stdafx.h"

#include "substr.h"

#includeusing namespace std;

void arithmetic(const char *pinputstr,long linputlen,char * poutputstr)

//取得第乙個運算元

while(pinputstr[++index]!=' ') // 這裡遇到空格截止

else

}//取操作符

while(pinputstr[++index]!=' ') //這裡遇到空格截止

if(pinputstr[index]!='+' && pinputstr[index]!='-' && pinputstr[index]!='*' && pinputstr[index]!='/')

opt=pinputstr[index];

} //index++; //移動到最後乙個空格. //這是錯的,while迴圈執行到空格才會停止,這句不需要。

//取得第二個運算元

while(pinputstr[++index]!='\0') //這裡遇到\0截止

else

}//現在開始計算

switch(opt) }

int main()

解析字串

package com.practice.json import org.json.jsonarray import org.json.jsonexception import org.json.jsonobject import android.os.bundle import android.u...

字串解析

把字串中的元素分配到二維陣列中,例如把 1,2 3,4,5 6.7,把逗號和分號的內容分開放到二維陣列中 使用spring 中的spilt方法把字串分成兩個部分放到兩個一位陣列中,然後把兩個一位陣列 的內容放到二維陣列中 public class no6 public static void mai...

java 字串解析

stringtokenizer tokenizer new stringtokenizer number,boolean bool true while tokenizer.hasmoretokens catch exception e 將字串轉化為陣列的方法 int gv int i 0 stri...