1. 3의 배수는 출력하지 않는 역 구구단
1.1. Source Code
--------------------------------------------------------------------------------------------------------------------------
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main(void)
{
// 변수 선언 부
int cur = 0;
int is = 0;
// 반복문 선언 부
for (cur = 9; cur > 0; cur--) // cur 은 9에서부터 1이 될때까지 Loop, Loop 당 1씩 감소
{
for (is = 9; is > 0; is--) //is는 9에서부터 1이 될때까지 Loop, Loop 당 1씩 감소. is Loop 1cycle per cur--
{
if ((cur * is) % 3 ==0) //3으로 나누어 나머지가 0 일경우 빈칸 출력
printf(" ");
else
printf("%-8d", cur * is ); // 그렇지 않을경우 필드 폭을 8칸 확보하고, 왼쪽 정렬해서 cur*is 출력을 진행한다
}
printf("\n"); //is Loop 가 완료되면(역 구구단 한줄이 완성되면) 줄바꿈
}
return 0;
}
--------------------------------------------------------------------------------------------------------------------------
1.2. 실행 image
--------------------------------------------------------------------------------------------------------------------------
2. 계산기 함수화 및 문자 입력시 경고메시지 출력
2.1. Source Code
--------------------------------------------------------------------------------------------------------------------------
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int sum(int a, int b) { return a + b; } // 사칙연산 함수화. int 로 값을 입력받고 입력받은 값을 연산하여 return
int min(int a, int b) { return a - b; }
int multiply(int a, int b) { return a * b; }
int divide(int a, int b) { return a / b; }
int main(void) {
int num1 = 0;
int num2 = 0;
int cal = 0;
int loop = 1;
do //무조건 한번은 진행
{
printf("첫번째 수를 입력하세요 : \n");
if (scanf("%d", &num1) == 0) {//scanf 의 %d 는 정수의 10진수 형태를 입력받으며 이 형태가 아닌 값을 넣으면 0을 반환. 0 반환시 경고메시지 출력
printf("숫자를 입력해야 합니다!\n");
loop = 0;
rewind(stdin); /*scanf 의 %d 는 정수의 10진수 형태를 입력받으며 이 형태가 아닌 값을 넣으면 읽지 못하며
잘못된 값이 입력됐을경우 입력버퍼에 그 값이 계속 남아서 다음번에도 그것을 읽으려고 시도하여
무한루프를 돌게됨 rewind(stdin) 를 통해 표준 입력 버퍼를 초기화 하여 문제를 해결할 수 있음*/
}
else
loop = 1; // 이상없을경우 do while 문에서 빠져나옴
} while (loop == 0);
do
{
printf("산술기호를 선택하세요 1.+ 2.- 3.* 4./ \n");
if (scanf("%d", &cal) == 0) {
printf("숫자를 입력해야 합니다!\n");
loop = 0;
rewind(stdin);
}
else
loop = 1;
} while (loop == 0);
do
{
printf("두번째 수를 입력하세요 : \n");
if (scanf("%d", &num2) == 0)
{
printf("숫자를 입력해야 합니다!\n");
loop = 0;
rewind(stdin);
}
else
loop = 1;
} while (loop == 0);
if (cal == 1)
{
printf("%d \n", sum(num1, num2)); // sum 함수에 num1,num2 값이 입력되고 결과값 반환
}
else if (cal == 2)
{
printf("%d\n", min(num1, num2));
}
else if (cal == 3)
{
printf("%d\n", multiply(num1, num2));
}
else if (cal == 4)
{
printf("%d\n", divide(num1, num2));
}
else
{
printf("알맞은 산술기호를 선택해야 합니다");
}
return 0;
}
--------------------------------------------------------------------------------------------------------------------------
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
7 |
20200220 C프로그래밍 권준환 - 동적할당 곱셈배열 출력
![]() | 권준환 | 2020.02.20 | 45 |
6 |
20200205 C프로그래밍 권준환 - D-Day 계산기
![]() | 권준환 | 2020.02.10 | 43 |
5 |
20200210 전역일 계산기
![]() | 전상준 | 2020.02.10 | 158 |
4 |
20200205 C프로그래밍 권준환 - 숫자와 문자를 입력받는 덧셈계산
![]() | 권준환 | 2020.02.05 | 43 |
3 |
20200205 C프로그래밍 권준환 - Sorting
![]() | 권준환 | 2020.02.05 | 46 |
» |
20200203 C프로그래밍 권준환
[1] ![]() | 권준환 | 2020.02.03 | 70 |
1 |
20200129 C프로그래밍 권준환
[2] ![]() | 권준환 | 2020.01.29 | 57 |
01. 들여쓰기
- 소스코드를 워드(word)에 옮겼다가 웹에 붙여보세요. 문단의 많은 양식이 생략되지 않을겁니다.
02. 함수명
- 분명히 sum 표준함수가 존재할겁니다.
- 사용자 정의 함수에 대한 네이밍은 fSum 과 같은 헝가리안 표기법을 지향하세요.