年号字串【2019C/C++省赛B组】

  • Post author:
  • Post category:其他


在这里插入图片描述

这道题实际上就是进制转换,将10进制转换为26进制。

想把对应的数字转换成对应的字母,

char(‘A’+i-1)

,这里就将数字i转换成了对应的第i个字母(i=1~26)

A对应的ASC码是65,char()是进行强制类型转换。

对应的代码如下:

#include<iostream>
#include<string>  //引入STL库中的string 

using namespace std;

int main(){
	string res;  //用来装最后输出的字串 
	string a;   //每次取模运算之后得到的字母 
	int n=2019;
	while(n){
		a=char('A'+n%26-1);
		n/=26;
		res=res.append(a);
		//res=res+a;    //string输出方式二 
	}
	cout << res <<endl;  //得出来的结果字串的逆序即是结果 
	cout << int('A') <<endl;
	return 0;
} 

最后的输出结果的逆序输出即为答案,为

BYQ


在这里插入图片描述



版权声明:本文为Cimiy_原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。