041. 포인터 이해하기
문제 : 정수형 변수 saram_A를 정의하고, 그 변수를 대신해서 사용할 수 있는 pointer를 정의하세요. 그리고 pointer를
saram_A 를 가리키도록 설정하고, saram_A를 사용할 곳에 pointer를 사용하는 프로그램을 작성하세요.
042. 널(NULL) 문자 이해하기
문제 : 문자열 "abcde"의 길이를 구하여 출력하는 프로그램을 작성하세요.
처음에 함수 lenght를 선언한다.
"abcde"의 길이를 구할 함수 length()를 호출한다.
호출 시 전달 값으로 사용되는 문자열 "abcde"를 문자열 포인터 변수 pstr을 전달받으며, 이때 문자열 전체가 아닌 첫 번째 문자의 번지만을 전달 받는다.
*pstr은 pstr이 가리키는 번지에 저장되어 있는 값을 의미하며 , pstr은 문자열의 선두 번지를 가리키고 있기 때문에, pstr의 번지가 1씩 증가함에 따라 *pstr의 값은 'a', 'b', 'c', 'd', 'e', '\0' 처럼 된다. 널 문자('\0')는 값이 0이기 때문에 널 문자를 만나면 while 문이 종료된다.
043. 구조체 이해하기
문제 : 국어, 영어, 수학의 점수를 저장할 구조체 변수를 정의하고, 총합을 구하는 성적 계산 프로그램을 적성하세요.
구조체와 배열의 차이점
배열은 동일한 데이터형에 대하여 여러 개를 정의하는 것
구조체는 서로 다른 데이터형을 하느의 묶음으로 처리하기 위한 것
044. 공용체 이해하기
문제 : 정수값과 실수값을 모두 대입할 수 있는 변수를 생성하는 프로그램을 작성하세요.
공용체와 구조체의 차이점 공용체는 변수가 사용하는 메모리 공간이 중첩된다는 것이다.
따라서 공용체의 멤버 변수들은 한 번에 하나만이 사용될 수 있습니다.
045. 열거형 이해하기
문제 : 일요일은 0, 월요일은 1, 수요일은 3, 목요일은 4, 금요일은 5, 토요일은 6을 출력하는 프로그램을 열거형을 사용하여
작성하세요.
열거형은 상수를 나열하는 것과 같은 효과가 있다. 열거형이 없다면 #define Sun 0, #define Mon 1처럼 일일히 모두 선언해야 한다.
046. 데이터형 정의하기
문제 : C++ 언어에서 사용되는 bool 데이터형을 선언하고 사용하는 프로그램을 작성하세요.
typedef문은 새로운 데이터형을 만드는 경우에 사용된다.
047. 함수와 인수 이해하기
문제 : 문자열을 출력하는 printf() 함수 프로그램을 작성하세요.
함수를 정의할 때 아래와 같은 형식으로 해야 한다.
반환 데이터형 함수명(데이터형 인수1, 데이터형 인수2, 데이터형 인수3, ...);
048.변수의 범위 이해하기
문제 : 전역 변수X를 정의하고 20으로 초기화하고, 지역 변수 X를 정의하고 5로 초기화한 후, 전역 변수 X와 지역 변수 X의
값을 출력하는 프로그램을 작성하세요.
전역변수 : 전역변수는 어떤 함수 바깥에서 정의되는 것이다. main() 함수도 하나의 함수이므로 외부 변수는 mai()의 밖에서 선언되는 것을 포함합니다.
지역변수 : 지역변수는 함수 내에서 정의되는 변수 입니다. 지역 변수의 범위는 변수가 정의된 함수로 제한된다.
지역 변수는 함수 내에서 전역 변수보다 참조 우선순위가 높다.
049. #include 문 이해하기
문제 : 키보드로부터 한 문자를 입력받는 프로그램을 작성하시오.
C언어를 사용하기 위해서는 기본적인 문법을 학습하는 것도 중요하지만, 구현하고자 하는 기능의 함수가 어느 파일에 선언되어 있는지 알아야 한다.
#include 문은 다음과 같이 두 가지 형태로 사용된다.
1. #include <파일명>
2. #include "파일명"
1의 경우에는 C의 표준 라이브러리를 사용하고자 하는 경우 사용
2의 경우에는 사용자가 만든 헤더 파일을 포함하고자 할 때 사용
050. 매크로 이해하기
문제 : 최대값을 구하는 매크로 MAX와 최소값을 구하는 매크로 MIN을 작성하여 보세요.
메크로는 함수 대신 사용하는 것으로서 길이가 짧은 문장에 주로 사용되며, 복잡한 문장을 단순화하기 위해서도 사용합니다.
'Programming > C언어' 카테고리의 다른 글
C언어 300제 051번~060번 (0) | 2017.07.28 |
---|---|
C언어 300제 031번~040번 (0) | 2017.03.30 |
C언어 300제 021번~030번 (0) | 2017.03.08 |
C언어 300제 011번~ 020번 (0) | 2017.03.05 |
C언어 300제 001번~010번 (0) | 2017.02.05 |