#include<iostream>
using namespace std;
int main()
{
string s;
while(cin>>s)
{
char c[s.length()];
for(int i=0;i<s.length();i++)
{
c[s.length()-1-i]=s[i];
}
for(int j=0;j<s.length();j++)
{
cout << c[j];
}
cout << endl;
}
}
-----------------------------------------------------------------------
以上是我的程式碼,請問怎麼削去前面的零QWQ,求解答。
不一定需要用另外一個 char [] 來存,對 s 反向處理即可
for (int i = s.length() - 1; i >= 0; i--) {
; // 輸出 s[i]
}
去掉前面的零,可以想成「遇到不是 '0' 之前,都不要輸出」
bool isZero = true;
for (/* 略 */) {
if (isZero && s[i] == '0') continue;
// 遇到不是 '0' 的時候,才會到下面這段
isZero = false;
cout << s[i];
}
要注意,輸入的數字有可能是 0,上面的寫法會沒有輸出 (一直被 continue),後面要再補上
if (isZero) cout << '0';
最後記得換行