您的位置:首页 > 其它

Excel地址转换

2015-09-24 02:03 302 查看
Excel地址转换

Excel是最常用的办公软件。每个单元格都有唯一的地址表示。比如:第12行第4列表示为:“D12”,第5行第255列表示为“IU5”。

事实上,Excel提供了两种地址表示方法,还有一种表示法叫做RC格式地址。 第12行第4列表示为:“R12C4”,第5行第255列表示为“R5C255”。 你的任务是:编写程序,实现从RC地址格式到常规地址格式的转换。 【输入、输出格式要求】

用户先输入一个整数n(n<100),表示接下来有n行输入数据。 接着输入的n行数据是RC格式的Excel单元格地址表示法。 程序则输出n行数据,每行是转换后的常规地址表示法。 例如:用户输入:

7

2

R12C4

R5C255

则程序应该输出:

D12

IU5

package marslin;

import java.util.Scanner;
import java.util.Stack;
import java.util.Vector;
public class Excel转换4 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
scanner.nextLine();  //必须加上的,不然会导致输入不准确!
while (n>0) {
String string=scanner.nextLine();
String strings[]=string.split("C");
strings[0]=strings[0].substring(1, strings[0].length());
int hangshu=Integer.parseInt(strings[0]),lieshu=Integer.parseInt(strings[1]);//获取行数和列数
/*
* 对列数进行变换
*/
Stack<Character>stack=new Stack<Character>();
while(lieshu>0){
if(lieshu%26==0){
stack.push('Z');
lieshu=lieshu/26-1;
}else {
stack.push((char)('A'-1+lieshu%26));
lieshu=lieshu/26;
}
}
while (!stack.empty()) {
System.out.print(stack.pop());
}
System.out.println(hangshu);
n--;
}
}
}


Excel
地址转换

Excel
是最常用的办公软件。每个单元格都有唯一的地址表示。比如:第
12
行第
4
列表示为:“
D12
”,第
5
行第
255
列表示为“
IU5
”。

事实上,
Excel
提供了两种地址表示方法,还有一种表示法叫做
RC
格式地址。


12
行第
4
列表示为:
“R12C4”
,第
5
行第
255
列表示为
“R5C255”


你的任务是:编写程序,实现从
RC
地址格式到常规地址格式的转换。

【输入、输出格式要求】

用户先输入一个整数
n

n<100
),表示接下来有
n
行输入数据。

接着输入的
n
行数据是
RC
格式的
Excel
单元格地址表示法。

程序则输出
n
行数据,每行是转换后的常规地址表示法。

例如:用户输入:

7
2
R12C4
R5C255
则程序应该输出:

D12
IU5
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: