메모장
C언어 복습 6 (오늘 날짜 표시) 본문
참고: 정덕 - <컴맹을 위한 C언어>
현재 시간을 구하는 방법
time_t 변수이름;
변수이름=time(NULL);
-> 1970년 1월 1일 자정(오전 12시)부터 흐른 시간을 초단위로 반환
※ 주의사항
1. VS2017 64비트 환경을 기준으로 자료형 "time_t"는 서식문자 %Id(대문자 i)를 이용하여 출력
(VS가 빌드할때 추천해준다(%I64d 등))
2. time 함수를 사용하기 위해 필요한 헤더파일 <time.h>
여기에
struct tm*변수1=localtime(&변수2);
를 추가하면 오늘의 날짜와 현재 시간을 구할 수 있다
" 변수2 " + " -> " + tm_year : 1900년 이후 몇년이 흘렀는지 알 수 있다. 현재 연도는 tm_year+1900
tm_mon : 1월이면 0, 2월이면 1 ... 12월이면 11로 출력된다 이번 달은 tm_mon+1
tm_mday : 오늘이 이번 달의 몇 번째 날인지 알 수 있다
tm_hour/min/sec : 현재 시 / 분 / 초를 알 수 있다
오늘의 요일 -> " tm_wday "를 사용
- tm_wday의 값에 따라 요일 결정 ( 0 = 일 / 1 = 월 / ... / 6 = 토)
이에 따라 요일을 표현하는 방법 3가지
1. if-else if 문
2. switch 문
3. 포인터배열 사용
1. if-else if 문
-if else의 확장형
if(조건1){ 코드1 }
else if(조건2){ 코드2 }
else if(조건3){ 코드3 }
else if(조건4){ 코드4 }
.....
else if(조건n){ 코드n }
else{ 코드n+1 }
예시) 사용자에게 나이를 입력받아 10 미만이면 어린이, 20미만이면 청소년,
65 미만이면 성인, 아니면 노인이라 출력하는 프로그램





if-else if로 요일 표현하기

2. switch문
switch(조건값)
{
case 값1: 코드1
case 값2: 코드2
case 값3: 코드3
. . .
case 값n: 코드n
default : 기본코드
}
조건값이 값1과 같으면 코드1을
값2와 같으면 코드2를 실행
어느 값과도 같지 않으면 default의 기본코드 실행(default값 없어도 무관)
예) 5지선다형 문제풀기

문자를 담기 위한 그릇, 문자형 변수 'char'
char는 1바이트(=8bit)
a, b, c 와 같은 문자 1개를 담을 수 있다
실은 숫자도 담을 수 있다
이에 대해서는 14강 '자료형'에서 더 자세히 나올 것
switch로 날짜 표현하기

3. 포인터배열
후에 자세히 나오기에 그냥 저렇게 할 수 도 있구나 정도로 넘어갈 수 있다
char* wday[]={"일","월","화","수","목","금","토"};
printf(wday[b->tm_wday]);
'C언어 복습' 카테고리의 다른 글
C언어 복습 8 (계산기) (0) | 2019.06.18 |
---|---|
C언어 복습 7 (점수 평균 내기) (0) | 2019.06.15 |
C언어 복습 5 (연산자 우선순위 / 표로 대체) (0) | 2019.05.25 |
C언어 복습4 (숫자 비밀번호 검사) (0) | 2019.05.19 |
C언어 복습3 (BMI 계산기) (0) | 2019.05.12 |