題目:一個8位的整數。它的每兩位代表一個字母在字母表中的序號(00-25),撰寫程式,輸入一個8位的整數(不夠8位的前面補0),按上述規則將其轉換為一個四字母的單詞。例如輸入01112004,輸出blue。
解答:
#include <iostream>
using namespace std;
int main()
{char a,b,c,d;
int f;
cin>>f;
d=f%100;
c=f/100%100;
b=f/10000%100;
a=f/1000000%100;
cout<<char(a+'a')<<char(b+'a')<<char(c+'a')<<char(d+'a');
return 0;
}
我的方法比較麻煩,但還是能用的啦
uj5u.com熱心網友回復:
你的方法可以,就是略顯笨拙,可以用回圈來做或者可以把輸入的整數存到一個字符陣列里
比如
char buf[9];
sprintf(buf, “%08d”, f);
然后兩個兩個遍歷字符陣列計算即可
uj5u.com熱心網友回復:
萌新一枚 沒看懂
uj5u.com熱心網友回復:
學一段時間我再回來看uj5u.com熱心網友回復:
多謝大佬指點
uj5u.com熱心網友回復:
給你一段完整的代碼,等你學了回圈再回來看看吧
int main() {
int a[4]={0};
int f,i;
cin>>f;
for (i=3; i>=0; i--) {
a[i] = f%100;
f /= 100;
}
for (i=0; i<4; i++)
cout<<char(a[i]+'a');
cout<<endl;
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/9493.html
標籤:C++ 語言
上一篇:訪問權限沖突
下一篇:找師傅找師傅找師傅
