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

C 언어의 포인터를 사용하여 계열에서 가장 큰 수 찾기

<시간/>

포인터는 다른 변수의 주소를 저장하는 변수입니다. 포인터를 사용하여 null 값을 유지할 수 있습니다. 참조로 전달을 사용하여 액세스할 수 있습니다. 또한 변수를 선언하면서 초기화가 필요하지 않습니다.

포인터의 구문은 다음과 같습니다 -

pointer variable= & another variable;

예를 들어,

p =&a;

알고리즘

포인터를 사용하여 계열에서 가장 큰 수를 찾는 방법은 아래에 제공된 알고리즘을 참조하십시오.

Step 1: Start
Step 2: Declare integer variables
Step 3: Declare pointer variables
Step 4: Read 3 numbers from console
Step 5: Assign each number address to pointer variable
Step 6: if *p1 > *p2
  • if *p1 > *p3
    • print p1 is large
  • else
    • print p2 is large
Step 7: Else if *p2 > *p3 Print p2 is large Else Print p3 is large Step 8: Stop

프로그램

다음은 포인터를 사용하여 계열에서 가장 큰 수를 찾는 C 프로그램입니다 -

#include <stdio.h>
int main(){
   int num1, num2, num3;
   int *p1, *p2, *p3;
   printf("enter 1st no: ");
   scanf("%d",&num1);
   printf("enter 2nd no: ");
   scanf("%d",&num2);
   printf("enter 3rd no: ");
   scanf("%d",&num3);
   p1 = &num1;
   p2 = &num2;
   p3 = &num3;
   if(*p1 > *p2){
      if(*p1 > *p3){
         printf("%d is largest ", *p1);
      }else{
         printf("%d is largest ", *p3);
      }
   }else{
      if(*p2 > *p3){
         printf("%d is largest ", *p2);
      }else{
         printf("%d is largest ", *p3);
      }
   }
   return 0;
}

출력

위의 프로그램을 실행하면 다음과 같은 결과가 나온다 -

Run 1:
enter 1st no: 35
enter 2nd no: 75
enter 3rd no: 12
75 is largest
Run 2:
enter 1st no: 53
enter 2nd no: 69
enter 3rd no: 11
69 is largest