取出列号和行号,将(列号-1)转换成26进制,每位加'A',与行号结合即可。例如R5C255,列号是255,转换成26进制即(9)(20),'A'+9='I','A'+20'='U',
所以R5C255转换为IU5
所以R5C255转换为IU5
// Excel表格中的RC地址转换.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <stdio.h> #define N 100 void InputRC(int *a,int *b,int n); int _tmain(int argc, _TCHAR* argv[]) { int i,n,a[N],b[N]; printf("请输入行数n(n<=100):\n"); scanf("%d",&n); for(i=0;i<n;i++) { InputRC(a,b,i); } printf("\n"); printf("转换后的地址:\n"); for(i=0;i<n;i++) { if(b[i]<=26) { printf("%c",64+b[i]); } else { printf("%c",b[i]/26+64); printf("%c",b[i]%26+64); } printf("%d",a[i]); printf("\n"); } return 0; } void InputRC(int *a,int *b,int n) { int i,j; char r,c,e; scanf("%c%c%d%c%d",&e,&r,&i,&c,&j); a[n]=i; b[n]=j; }