基於給定列號列印 Excel 列標題的 C 程式
問題
一個程式,用於列印與給定列號(整數值)對應的 Excel 列標題。使用者需要輸入整數,根據給定的數字,程式需要列印 Excel 列號。
解決方案
以下解釋了在 C 程式語言中列印與給定列號對應的 Excel 列標題的解決方案。
示例 1
讓我們看一個例子。
1 -> A 2 -> B ... 26 -> Z 27 -> AA 28 -> AB ...
示例 2
- 輸入如下:
number = 3 number = 27 number = 151
- 輸出如下:
Excel column title: C Excel column title: AA Excel column title: EU
示例
以下是用於列印與給定列號對應的 Excel 列標題的 C 程式:
#include <stdio.h>
static char *convert_To_Excel_Title(int column_no){
if (column_no <= 0) {
return "";
}
char *result = malloc(1024);
int len = 0;
do {
result[len++] = ((column_no - 1) % 26) + 'A';
column_no = (column_no - 1) / 26;
} while (column_no > 0);
result[len] = '\0';
int i, j;
for (i = 0, j = len - 1; i < j; i++, j--) {
char c = result[i];
result[i] = result[j];
result[j] = c;
}
return result;
}
int main(void){
int n;
printf("enter the integer1:");
scanf("%d",&n);
printf("Column Number n = %d", n);
printf("
Excel column title: %s
",convert_To_Excel_Title(n));
printf("enter the integer2:");
scanf("%d",&n);
printf("
Column Number n = %d", n);
printf("
Excel column title: %s
",convert_To_Excel_Title(n));
printf("enter the integer3:");
scanf("%d",&n);
printf("
Column Number n = %d", n);
printf("
Excel column title: %s ",convert_To_Excel_Title(n));
return 0;
}輸出
當執行以上程式時,會產生以下結果:
enter the integer1:23 Column Number n = 23 Excel column title: W enter the integer2:12 Column Number n = 12 Excel column title: L enter the integer3:69 Column Number n = 69 Excel column title: BQ
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP