Excel地址转换

 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行数据,每行是转换后的常规地址表示法。 例如:用户输入: 



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

行数据,每行是转换后的常规地址表示法。

 

例如:用户输入:

 

 

R12C4 

R5C255 

则程序应该输出:

 

D12 

IU5 

你可能感兴趣的:(java,数据结构,算法,蓝桥杯)