Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

주어진 열 번호를 기반으로 Excel 열 제목을 인쇄하는 C 프로그램

<시간/>

문제

주어진 열 번호(정수 값)에 해당하는 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("\nExcel column title: %s\n\n ",convert_To_Excel_Title(n));
   printf("enter the integer2:");
   scanf("%d",&n);
   printf("\nColumn Number n = %d", n);
   printf("\nExcel column title: %s\n\n ",convert_To_Excel_Title(n));
   printf("enter the integer3:");
   scanf("%d",&n);
   printf("\n\nColumn Number n = %d", n);
   printf("\nExcel 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