一.题目
二.思路
思路都在代码里啦,主要是进制转换和控制输出。我没有做出完整的题目,做了一部分,主要还是个思路,一个的会了,多个的也就加个循环而已了。
三.代码
#include <stdio.h>
#include<string.h>
char s[10000];
void func(int num,int tar) //进制转换函数
{
if(num>tar-1)
{
func(num/26,26);
}
printf("%c",num%26+'A'-1);//数字变字母
}
int main ()
{
gets(s);
char tempc;
int tempi;
tempc = s[0];
int i=1;
int j=0;
int hang[10000],lie[10000];//先存进数组里
int temh,teml;
while(tempc!='\0')
{
if(tempc=='R')
{
tempc = s[i];
while(tempc!='C')
{
hang[j] = tempc-'0';
j++;
i++;
tempc = s[i];
}
}
temh=j; //临时的数组行的长度
j=0;
if(tempc =='C')
{
tempc = s[i+1];
while(tempc!='\0')
{
lie[j] = tempc-'0';
j++;
i++;
tempc = s[i+1];
}
}
teml = j;//临时的数组列的长度
}
int tarlie=0;
i=0;
while(i<teml) //把列给作出来%d
{
tarlie += lie[i];
if(i+1<teml)
{
tarlie*=10;
}
i++;
}
func(tarlie,26);//拿列去进制转换
for(i=0;i<temh;i++)
{
printf("%d",hang[i]);//行不变 输出就行
}
return 0;
}