웹사이트 검색

C 프로그래밍 자습서 3부 - 변수 기본 사항


지금까지 전처리기가 무엇인지에 대해 논의했습니다. 이 자습서를 완료했다면 다음 주제인 변수에 대해 논의할 시간입니다.

변수는 프로그래머가 요구 사항에 따라 사용할 값을 저장하므로 C 프로그래밍의 핵심 요소 중 하나입니다. 예제를 통해 기본 사항을 이해합시다. 다음은 기본 C 프로그램입니다.

#include <stdio.h>

int main (void)
{
int a = 10;
char b = 'z';
float c = 1.5;
printf("\n a=%d, b=%c, c=%f \n", a,b,c);
return 0;
}

이전 C 프로그래밍 자습서에서 우리는 이미 stdio.h가 무엇인지, #include가 무엇을 의미하는지, 함수(특히 main)가 무엇인지에 대해 설명했습니다. 따라서 변수 부분으로 바로 이동합니다.

int a =10 행은 정수(int) 유형 값을 보유할 수 있는 a라는 변수가 있고 보유 중인 현재 값이 10임을 의미합니다. 마찬가지로 b는 문자를 보유할 수 있고 c는 현재 값으로 부동 소수점 숫자를 보유할 수 있습니다. 각각 z와 1.5입니다.

위에 표시된 예제 프로그램은 Printf 함수를 통해 이러한 값을 출력에 인쇄합니다. %d, %c 및 %f는 변수 a, b, c가 각각 정수, 문자 및 부동 소수점으로 처리되어야 함을 printf 함수에 알리는 데 사용됩니다.

물론 이러한 값을 출력에 인쇄하는 것보다 더 많은 작업을 수행할 수 있습니다. 예를 들어, 다음 프로그램은 숫자 5의 계승을 계산합니다.

#include <stdio.h>

int main (void)
{
int num = 5;
int result = 1;
while (num > 0)
{
result = result * num;
num = num -1;
}

printf("\n Factorial of 5 is %d\n", result);

return 0;
}

알지 못하는 사람들을 위해 숫자의 계승(예: n)은 다음 곱셈의 결과입니다.

nx(n-1)x(n-2)x.....1

따라서 숫자가 5이면 5의 계승(또는 5!)은 5x4x3x2x1이 되어 120이 됩니다.

프로그램으로 돌아가서 num과 result라는 두 개의 정수 변수를 정의했습니다. num은 팩토리얼을 계산할 숫자(이 경우 5)를 포함하지만 result는 처음부터 더미 값 1을 보유합니다. 그런 다음 while 루프가 발생합니다.

이름에서 알 수 있듯이 루프는 일련의 명령을 반복적으로 실행하기 위해 C 함수에서 사용됩니다. while의 경우 조건(이 경우 num은 0보다 커야 함)을 확인하여 루프가 시작된 다음 while 조건이 false가 될 때까지 루프 내부의 명령이 반복적으로 실행됩니다.

이 경우 num의 값은 처음에 5입니다. 따라서 실행은 루프 내부로 들어가고 결과의 첫 번째 값은 5(1x5)가 됩니다. 그 후 num은 num -1이 됩니다. 즉, num의 새 값은 이제 4입니다.

그런 다음 4가 여전히 0보다 크기 때문에 루프가 다시 실행됩니다. 이번에는 결과가 5x4, 즉 20이 됩니다. 그러면 num은 (4-1)이 되고 3이 됩니다. 이렇게 하면 num이 0이 될 때까지 루프가 계속 실행되고 그때까지 결과는 120이 됩니다. 5의 계승.

따라서 이 프로그램에서 생성된 출력은 다음과 같습니다.

Factorial of 5 is 120

이제 특정 값(이 경우 5와 같은) 대신 프로그램 사용자가 계승을 계산할 숫자를 지정하도록 하려면 어떻게 해야 합니까? 음, 다음과 같은 방법으로 수행할 수 있습니다.

#include <stdio.h>

int main (void)
{
int num = 0, temp=0;
printf("\n Enter a positive integer: ");
scanf("%d", &num);
temp = num;
int result = 1;
while (temp > 0)
{
result = result * temp;
temp = temp -1;
}

printf("\n Factorial of %d is %d\n", num, result);

return 0;
}

그래서 여기서 우리는 printf와 정반대의 역할을 하는 scanf라는 새로운 함수를 사용했습니다. 사용자의 입력을 받습니다.

이제 모든 변수에는 바이트 단위로 관련된 특정 양의 메모리가 있습니다. scanf 함수는 변수 메모리의 시작 주소를 전달해야 하며 변수 이름 앞에 &를 배치하여 액세스할 수 있습니다.

마지막 printf 문에서 사용자가 전달한 실제 숫자(여기에 num에 저장됨)가 필요하므로 여기에 새 변수 temp를 도입했습니다.

이 자습서에서는 변수의 기본 사항을 다뤘습니다. 이 튜토리얼은 변수가 무엇인지, C 프로그래밍 언어에서 변수를 어떻게 사용할 수 있는지에 대한 기본적인 아이디어를 제공했을 것입니다. 논의해야 할 변수와 관련된 몇 가지 다른 측면이 있습니다. 다음 자습서에서 이에 대해 설명하겠습니다.