본문 바로가기

C언어 강좌

[C언어_03] C언어 문제 풀이 #1


안녕하세요.

 

오늘은 C언어 문제를 풀어보는 시간을 가져보려고 합니다.

 


 

| C언어 문제 풀이 사이트 (한글)

C언어를 공부하실 때는 강의를 보기만 하는 것 보다 문제를 직접 풀어 보는 것이 실력향상에 도움이 됩니다.

 

여러 문제를 찾아보고 하나하나 풀어가면서 실력을 쌓는 것이 가장 확실한 방법입니다.

 

C언어 문제를 풀어볼 수 있는 한국 사이트들이 많이 있습니다. 그중 몇가지를 살펴보자면

 

1. 백준(Baekjoon Online Judge)

 

https://www.acmicpc.net/

 

Baekjoon Online Judge

Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.

www.acmicpc.net

가장 사람들이 많이 찾는 문제풀이 사이트입니다.

 

2. CodeUp

 

https://codeup.kr/

 

CodeUp

☆ 파이썬 다운로드 : 파이썬3 ☆ 무료 C언어 IDE : Code::blocks       DEV C++ ☆ 추천 온라인 IDE : C++11   Python3   Java ☆ 채점 가능 언어 : C, C++, JAVA, Python 3.5 ★ C++로 제출시 void main()을 사용하면 컴��

codeup.kr

백준과 같이 사람들이 많이 찾는 사이트 입니다.

 

 

위의 두 사이트가 가장 사람들이 많고, 문제 양도 많습니다.

 

위의 사이트들은 처음하는 사람들을 위한 단계별 문제집이 있습니다.

 

처음에는 단계별로 문제집을 풀어가는 것을 추천합니다.

 


| C언어 문제풀이 사이트 (영어)

C언어를 공부하실 때는 영어를 많이 익혀두어야 합니다 !!!

 

왜냐하면 C언어와 관련된 좋은 정보들이 주로 외국 자료에 있기 때문입니다.

 

만약 영어자료를 이해할 수 있는 실력을 가진 분이라면,

 

영어 문제를 풀어보는 것도 많은 도움이 됩니다.

 

영어 문제를 풀어볼 수 있는 사이트를 몇가지 소개해드리자면,

 

1. Leetcode

 

https://leetcode.com

 

LeetCode - The World's Leading Online Programming Learning Platform

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

 

2. GeeksforGeeks

https://www.geeksforgeeks.org/

 

GeeksforGeeks | A computer science portal for geeks

Featured Article As the placement season is back so are we to help you ace the interview. We have selected some most commonly asked and must do… Read More » Featured Article Amazon… “Hire and Develop the Best”. One of the Big Four Tech Companies f

www.geeksforgeeks.org

위의 두 사이트를 추천합니다.

 

문제 양도 많고, 디자인도 깔끔하기 때문입니다.

 

C언어 문제풀이

 

그럼 본격적으로 문제들을 풀어보는 시간을 가져보도록 하겠습니다.

 

저는 위의 사이트에서 한 문제를 가져와봤습니다.

 

STEP 1. 문제 이해


먼저 위의 문제의 조건을 확인해 봅시다.

 

먼저 두 자연수 A,B가 있다는 것을 확인 할 수 있습니다.

 

저번시간에 자연수의 자료형은 int라고 배웠습니다.

 

그럼 두 변수 A,B를 만드려면 다음과 같이 입력하면 됩니다.

 

int A,B;

 

아직 이 변수에는 값이 할당되지 않았습니다. 그점 유의하고 계속 문제를 읽어봅시다.


 

우리는 이 변수에 값을 집어넣어서 계산을 해야됩니다.

 

변수에 값을 집어넣는 함수는 scanf()라고 지난시간에 배웠습니다.

 

그러면

scanf("%d %d", &A, &B);

다음과 같이 코드를 만들면 값이 우리가 입력한대로 들어갈 것 입니다.

 

간혹 scanf()에서 에러가 발생할 때가 있는데 그때는 scanf_s()를 대신 입력해주세요.


 

 

 

다시 문제로 돌아와서, 우리는 사칙연산값을 계산한 것을 출력해야 합니다.

 

그럼 print()함수를 이용해 볼까요?

 

printf("%d", A+B);

 

다음과 같이 코드를 입력하면 A+B값이 출력될 것입니다.

 


STEP2 문제풀이

위의 코드들을 기반으로 문제를 풀어봅시다.

 

먼저 맨 윗줄에

#include <stdio.h>

를 입력해 줍시다.

 

<stdio.h>는 쉽게 말해서 우리가 사용하는 print,scanf가 들어있는 곳이라고 생각하면 됩니다.

 

그리고 main함수를 불러옵시다.

 

void main()

 

그리고 위의 코드대로 변수 A,B를 만들어 줍시다.

 

int A,B; //정수형 변수 A,B선언

 

변수 A,B에 우리가 입력한 값을 넣으려면 scanf를 사용해야 합니다.

 

다음과 같이 코드를 작성해 봅시다.

 

scanf_s("%d %d", &A, &B); //변수 A,B에 값 입력

입력한 값이 A,B에 저장되었다 가정하고, 사칙연산을 한 값을 출력해 봅시다.

 

printf("%d\n", A+B); //A 더하기 B
printf("%d\n", A-B); //A 빼기 B
printf("%d\n", A*B); //A 곱하기 B
printf("%d\n", A/B); //A 나누기 B
printf("%d\n", A%B); //A 나누기 B의 나머지

다음과 같이 입력하면 됩니다.

 

따라서 위의 문제에 대한 코드를 작성해보면 다음과 같습니다.

 

#include <stdio.h>

void main(){
	
    	int A,B;
    
	scanf_s("%d %d", &A, &B);
    
	printf("%d\n", A+B); //A 더하기 B
	printf("%d\n", A-B); //A 빼기 B
	printf("%d\n", A*B); //A 곱하기 B
	printf("%d\n", A/B); //A 나누기 B
   	printf("%d\n", A%B); //A 나누기 B의 나머지
}

STEP3 실행하기

이제 visual studio에 가서 프로그램을 실행해 봅시다.

 

CTRL + F5를 하면 프로그램을 실행할 수 있습니다.

 

실행한 후 다음과 같이 입력한 후 엔터를 눌러봅시다.

값이 정상적으로 출력되는 것을 확인 할 수 있습니다.

 

 

마무리

이상으로 C언어 문제풀이를 마치겠습니다.

 

여러분들도 직접 해보시면서 코딩의 재미를 알아가셨으면 좋겠습니다.

 

감사합니다.