ITGenerations
윤성우 열혈 c 프로그래밍 chap9-1 본문
<예제1>
#include <stdio.h>
int MaxNum(int n1, int n2, int n3)
{
if (n1 > n2)
return (n1 > n3) ? n1 : n3;
else
return (n2 > n3) ? n2 : n3;
}
/*
n1>n2일 때 return (n1>n3)해서 n1 하고 n3를 출력하는 이유는
둘 중에 더큰수비교를 중첩해서 결국 3가지 중 가장 큰 수를
출력하기 위해서이다.
*/
int MinNum(int n1, int n2, int n3)
{
if (n1 > n2)
return (n2 > n3) ? n3 : n2;
else
return (n1 > n3) ? n3 : n1;
}
/*
n1>n2일 때 return(n2>n3)?n3:n2;를 하는 이유는
maxnum코드와 반대로 하기 위해서다.
즉, 더 작은수를 구하기 위해서인데.
이 경우는 헷갈릴수도 있었다.
*/
int main(void)
{
int n1, n2, n3;
printf("3가지 정수를 입력하시오:");
scanf("%d %d %d", &n1, &n2, &n3);
printf("가장 큰 정수:%d\n", MaxNum(n1,n2,n3));
printf("가장 작은 정수:%d\n", MinNum(n1,n2,n3));
return 0;
}
<예제2>
#include <stdio.h>
double CelToFah(double c)
{
return 1.8*c + 32;
}
double FahToCel(double f)
{
return (f - 32) / 1.8;
}
int main(void)
{
int sel;
double num;
printf("1. 섭씨(c)를 화씨(f)로 2.화씨(f)를 섭씨(c)로\n");
printf("선택:");
scanf("%d",&sel);
if (sel == 1)
{
printf("섭씨(c)입력:");
scanf("%lf", &num);
printf("화씨(f): %f\n", CelToFah(num));
}
else if (sel == 2)
{
printf("화씨(f)입력:");
scanf("%lf", &num);
printf("섭씨(c): %f\n", FahToCel(num));
}
else
printf("선택 오류\n");
return 0;
}
<예제3>
#include <stdio.h>
void showfibo(int num)
{
int f1 = 0, f2 = 1, f3, i;
if (num == 1)
printf("%d\n", f1);
else
printf("%d\n%d\n", f1, f2);
for (i = 0; i < num - 2; i++)
{
f3 = f1 + f2;
printf("%d\n", f3);
f1 = f2;
f2 = f3;
}
}
int main(void)
{
int n;
printf("몇 개의 피보나치 수열을 나열?: ");
scanf("%d", &n);
printf("\n\n");
if (n < 1)
{
printf("1이상의 값을 입력하세요.\n");
return -1;
}
showfibo(n);
return 0;
}
--------------------------------------
피보나치수열 48개 나열 결과
--------------------------------------
몇 개의 피보나치 수열을 나열?: 48
0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
10946
17711
28657
46368
75025
121393
196418
317811
514229
832040
1346269
2178309
3524578
5702887
9227465
14930352
24157817
39088169
63245986
102334155
165580141
267914296
433494437
701408733
1134903170
1836311903
-1323752223
계속하려면 아무 키나 누르십시오 . . .
48개째부터는 수를 더 이상 나타내지못한다.
그 이유는 int 가 표시할 수 있는 수의 한계가 있기 때문.
'프로그래밍 > 연습문제' 카테고리의 다른 글
윤성우 열혈c프로그래밍 07-1-2 (0) | 2017.06.30 |
---|---|
윤성우 열혈 c 프로그래밍/ 07-1-1 (0) | 2017.06.30 |
윤성우 열혈 c 프로그래밍 goto문 (0) | 2017.05.13 |
윤성우 열혈 c 프로그래밍 chap8-3 (0) | 2017.05.13 |
윤성우 열혈 c 프로그래밍 chap8-2 (0) | 2017.05.13 |