반응형
1부터 n까지의 곱을 C언어의 for, while 문으로 작성한 코드입니다.
곱을 저장하는 변수는 초기값을 0이 아닌 1을 할당해야 하는 것에 주의하여야 합니다.
#define _CRT_SECURE_NO_WARNINGS // Visual Studio
#include <stdio.h>
int main()
{
int i, n, m = 1;
scanf("%d", &n);
for (i = 1; i <= n; i++)
m *= i;
printf("1부터 %d까지의 곱: %d\n", n, m);
return 0;
}
조금 더 큰 값을 입력할 경우에는 곱을 저장하는 변수를 double 형식으로 선언하면 좋겠습니다.
#define _CRT_SECURE_NO_WARNINGS // Visual Studio
#include <stdio.h>
int main()
{
int i, n;
double m = 1;
scanf("%d", &n);
for (i = 1; i <= n; i++)
m *= i;
printf("1부터 %d까지의 곱: %.0f\n", n, m);
return 0;
}
double 형식의 정밀도는 15자리 정도이므로, 15자리가 넘는 결과값은 값이 맞는지 확인할 수 없습니다.
아래의 코드는 for문을 while 문으로 표현한 것입니다.
#define _CRT_SECURE_NO_WARNINGS // Visual Studio
#include <stdio.h>
int main()
{
int i, n;
double m = 1;
scanf("%d", &n);
i = 0;
while (i<10)
{
i++;
m *= i;
}
printf("1부터 %d까지의 곱: %.0f\n", n, m);
return 0;
}
반응형
'C_C++' 카테고리의 다른 글
(C언어) 스레드로 배경음악 재생하기 (0) | 2023.06.15 |
---|---|
(C언어) 배경음악 (소리 .wav) 재생하기 (0) | 2023.06.15 |
(C언어) 문자열의 지정된 위치에 다른 문자열 삽입하기 (0) | 2023.06.06 |
(C언어) x자 모양 별 찍기 (0) | 2023.05.31 |
(C언어) 대문자를 소문자로, 소문자는 대문자로 변환하기 (0) | 2023.05.30 |