Đề bài yêu cầu:
Viết chương trình nhập ngày, tháng, năm.
- Tháng có bao nhiêu ngày
- Tìm ngày trước ngày vừa nhập.
- Tìm ngày sau ngày vừa nhập
Em có viết đoạn code như ở dưới. Em thắc mắc là khi e dùng CodeBlocks thì nó chạy đúng còn khi e dùng Dev - C++ thì nó lại ra sai. Các bác giúp em giải đáp với ạ. Em cảm ơn ạ!!
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define MAX 99
void ngaycuathang(int thang, int nam)
{
int NgayTrongThang;
switch(thang)
{
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
NgayTrongThang = 31;
printf("\n\tThang %d co 31 ngay!", thang);
break;
case 4: case 6: case 9: case 11:
NgayTrongThang = 30;
printf("\n\tThang %d co 30 ngay!", thang);
break;
case 2:
if((nam%4==0 && nam%100 != 0)|| nam%400==0)
{
NgayTrongThang = 29;
printf("\n\tThang %d co 29 ngay!", thang);
}
else
{
NgayTrongThang = 28;
printf("\n\tThang %d co 28 ngay!", thang);
}
break;
}
}
void TimNgayTruocDo(int ngay, int thang, int nam)
{
int NgayTrongThang;
if(ngay==1)
{
if(thang==1)
{
thang=12;
nam = nam-1;
}
else
thang = thang-1;
ngay = NgayTrongThang;
}
else
{
ngay=ngay-1;
}
printf("\n\tNgay truoc ngay vua nhap la: %d/%d/%d", ngay, thang, nam);
}
void TimNgaySauDo(int ngay, int thang, int nam)
{
int NgayTrongThang;
if(ngay==NgayTrongThang)
{
if(thang==12)
{
thang = 1;
nam = nam+1;
}
else
thang = thang + 1;
ngay = 1;
}
else
{
ngay=ngay+1;
}
printf("\n\tNgay sau ngay vua nhap la: %d/%d/%d", ngay, thang, nam);
}
int main()
{
int ngay, thang, nam;
int NgayTrongThang;
printf("Nhap ngay: ");
scanf("%d", &ngay);
while(ngay<1)
{
printf("\nNhap lai ngay: ");
scanf("%d", &ngay);
}
printf("\nNhap thang: ");
scanf("%d", &thang);
while(thang<1 || thang>12)
{
printf("\nNhap lai thang: ");
scanf("%d", &ngay);
}
printf("\nNhap nam: ");
scanf("%d", &nam);
if (ngay <= NgayTrongThang)
{
printf("\nNgay vua nhap la: %d/%d/%d", ngay, thang, nam);
ngaycuathang(thang, nam);
TimNgayTruocDo(ngay, thang, nam);
TimNgaySauDo(ngay, thang, nam);
printf("\n");
}
else
printf("\nNgay khong hop le! Vui long nhap lai!\n");
return 0;
}

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?