기타 [C언어] 1년 중 몇 번째 날인지 구하기. 102015-10-12 19:44:39 175.♡.44.111
#include <stdio.h> int main() { int a, b, c, i, day = 0; printf("연도, 월, 일을 입력하시오."); scanf_s("%d %d %d", &a, &b, &c); for (i = 1; i <= b; i++) { if (i = 1 || 3 || 5 || 7 || 8 || 10 || 12) day += 31; else if (i = 2) { if ((a % 400 == 0) || (a % 4 == 0) || (a % 100 != 0)) day += 29; else day += 28; } else day += 30; } if ((a % 400 == 0) || (a % 4 == 0) || (a % 100 != 0)) printf("%d년은 윤년이므로 %d월 %d일은 1년 중 %d번째 날입니다.", a, b, c, day); else printf("%d년은 윤년이 아니므로 %d월 %d일은 1년 중 %d번째 날입니다.", a, b, c, day); return 0; } 안녕하세요 C언어를 공부중인 학생입니다. 연도, 월, 일을 입력받아 해당일이 1년 중 몇 번째 날인지 출력하는 코드를 구성하고 있는데요 몇월인지 받아서 1월부터 b-1월까지의 일수를 day에 합해주고 마지막으로 b월의 c일에서 c일만큼을 day에 합산해주었는데 연도,월,일을 받고 엔터를 쳐도 그다음에 아무것도 실행이 안되는데 뭐가 문제인지 모르겠어 도움을 청합니다... C언어는 날짜/시간을 구할 때 하나의 함수로만 되는 것이 아니라, 다음과 같이 약간 복잡합니다. time() 함수로, 현재 경과된 초(sec), 즉 "유닉스 시간"을 구한 후, 그것을 localtime() 함수로 연월일 시분초로 분리하여 구조체에 저장합니다. C에서, 오늘 시각/날짜 (현재 날짜, 시간) 출력 예제 #include <stdio.h> #include <time.h> void main(void) { time_t timer; struct tm *t; timer = time(NULL); // 현재 시각을 초 단위로 얻기 t = localtime(&timer); // 초 단위의 시간을 분리하여 구조체에 넣기 printf("유닉스 타임 (Unix Time): %d 초\n\n", timer); // 1970년 1월 1일 0시 0분 0초부터 시작하여 현재까지의 초 printf("현재 년: %d\n", t->tm_year + 1900); printf("현재 월: %d\n", t->tm_mon + 1); printf("현재 일: %d\n\n", t->tm_mday); printf("현재 시: %d\n", t->tm_hour); printf("현재 분: %d\n", t->tm_min); printf("현재 초: %d\n\n", t->tm_sec); printf("현재 요일: %d\n", t->tm_wday); // 일요일=0, 월요일=1, 화요일=2, 수요일=3, 목요일=4, 금요일=5, 토요일=6 printf("올해 몇 번째 날: %d\n", t->tm_yday); // 1월 1일은 0, 1월 2일은 1 printf("서머타임 적용 여부: %d\n", t->tm_isdst); // 0 이면 서머타임 없음 } 241. 두 개의 파일 합치기 문제내용 : 임의의 두 개의 파일을 정하여 하나의 파일로 합치는 프로그램을 작성하세요. <입력코드 및 출력결과> 242. 파일에서 특정 문자열 검색하기(strstr) 문제내용 : 제공된 파일을 개방하여 "대한민국"이 있는 행이 몇 번째 행인지 출력하는 프로그램을 작성하세요. <입력코드 및 출력결과> 243. 파일에서 특정 문자열 교체하기 문제내용 : [예제-242]에서 사용한 파일에서 "대한민국"을 "한국"으로 교체하여 저장하는 프로그램을 작성하세요. <입력코드 및 출력결과> 244. 연/월/일 시:분:초 출력하기(time, localtime) 문제내용 : 년/월/일 시:분:초를 파일에 출력하는 프로그램을 작성하세요. <입력코드 및 출력결과> 245. 출생일로부터 오늘까지의 경과일 수 구하기(mktime) 문제내용 : 출생일로부터 오늘까지의 경과된 날짜 수를 구하는 프로그램을 작성하세요. <입력코드 및 출력결과> 246. 각 달의 마지막 날짜 구하기(mktime) 문제내용 : 올해의 1월~12월 까지의 마지막 날짜를 구하는 프로그램을 작성하세요. <입력코드 및 출력결과> 247. D-Day 구하기(mktime) 문제내용 : 오늘 날짜를 기준으로 D-Day를 정하고 D-Day까지 몇 일이 남았는지 계산하는 프로그램을 작성하세요. <입력코드 및 출력결과> 248. 오늘 날짜로부터 크리스마스까지의 남은 시간 구하기 문제내용 : 오늘 날짜를 기준으로 크리스마스까지 남은 시간을 월,일,시,분,초로 출력하는 프로그램을 작성하세요. <입력코드 및 출력결과> 249. 오늘 날짜에 임의의 날짜 더하고 빼기 문제내용 : 오늘 날짜에 100개월 90일 80시간을 더하거나 빼는 프로그램을 작성하세요. <입력코드 및 출력결과> 250. 크리스마스의 요일 구하기 문제내용 : 2007년 크리스마스의 요일을 구하는 프로그램을 작성하세요. <입력코드 및 출력결과> |