题目:
编写一个程序,输入一个字符串,输出其中每个字符在字母表中的序号。对于不是英文字母的字符,输出0。例如,输入为“acbf8g”,输出为1 3 2 6 0 7。
代码:
#include <iostream>
using namespace std;
int main()
{
const int length = 1000; //字符串最大长度,可改
char a[length];
cout << "请输入一个字符串:(输入完成后按回车键)";
cin.getline(a,length);
/*strlen(a)作计数器,它开始扫描,直到碰到第一个字符串结束符'/0'为止,
然后返回计数器值。注意不能写成i < strlen(a)-1,因为字符串最后一个是'\0'。 */
for (int i = 0; i < strlen(a); ++i)
{
if ( ( (int)a[i] >= 97) & ( (int)a[i] <= 122) ) cout << (int)a[i]-96 << " ";
else cout << "0" << " ";
}
cout << endl;
system("pause");
return 0;
}