寒假CF1 C-龟龟

题意 :十进制转换为十六进制

学姐的代码------实在太机智和万万没想到了 

#include<stdio.h>
#include<string.h>
#include<cctype>

char a[100000];

void dfs(int x)//递归
{
if(x<=0)
return;
x--;
dfs(x/26);
printf("%c",x%26+'A');
}

int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%s",a);
int x,y;
if(sscanf(a,"%*c%d%*c%d",&x,&y)==2)//sscanf() - 从一个字符串中读进与指定格式相符的数据 
{
dfs(y);
printf("%d
",x);
}
else
{
int l=strlen(a);
int x=0,y=0;
for(int i=0;i<l;i++)
if(isalpha(a[i]))//判断字符ch是否为英文字母,若为小写字母,返回2,若为大写字母,返回1。若不是字母,返回0。
x=x*26+a[i]-'A'+1;
else
y=y*10+a[i]-'0';
printf("R%dC%d",x,y);
}
}
return 0;
}

 

//(sscanf用法详解)

http://baike.baidu.com/link?url=O-irV7__VsbhhkH44oWrkatjy42bTyK_OixjQtfuYMYcDRWZUgEBHwuuLtvMQhJLocQMgeZtTOEsQ9Mcy4HjBa

原文地址:https://www.cnblogs.com/awsent/p/4261874.html