1. Bài tâp cho biết ngày nhập vào là ngày bao nhiêu của năm trong C

Bài tập cơ bản này ta có thể có hướng giải quyết là sử dụng cấu trúc switch case và for trong ngôn ngữ lập trình C.

Đầu vào sẽ là một ngày(ngay, thang, nam),  yêu cầu của bài toán là cho biết ngày nhập vào là ngày bao nhiêu của năm trong C.

2. Lời giải

Để giải được bài tập cho biết ngày nhập vào là ngày bao nhiêu của năm trong C bạn phải có kiến thức về toán học cơ bản, có kiến thức về nhập xuất cơ bản và cách sử dụng cấu trúc switch case trong lập trình C cơ bản.

Các bước thực hiện bài toán như sau:

Bước 1: Khai báo biến int Thang, Nam, Ngay đùng để gán giá trị của tháng, năm và ngày.

Bước 2: Khai báo biến int songay = Ngay đển tính số ngày đó trong năm.

Bước 3: Dùng vòng for bắt đầu từ int i=1 ; i < Thang; mỗi lần lặp i tăng lên 1; sử dụng switch truyền vào i với các case 4,6,9,11 thì songay+=30 ; case 2 sử dụng if year % 4 = 0 && year % 100 != 0 || year % 400 = 0 (kiểm tran năm nhuận) songay+=29 ngược lại songay+=28; default: s += 31.

Bước 4: in songay ra màn hình.

Chương trình giải bài tập cho biết ngày nhập vào là ngày bao nhiêu của năm trong C như sau :

#include<stdio.h>
int main()
{
    // khai bao bien Thang, Nam, Ngay
    int Thang, Nam, Ngay;
    //Nhap vao Ngay Thang Nam
    printf("\nNhap vao ngay: ");
    scanf("%d", &Ngay);
    printf("\nNhap vao thang: ");
    scanf("%d", &Thang);
    printf("\nNhap vao nam: ");
    scanf("%d", &Nam);
    //khai bao songay=ngay
    int songay = Ngay;
    //vong bat dau tu int i=1 ; i < Thang; moi lan lap i tăng lên 1
    for(int i = 1; i < Thang; i++)
    {
        switch (i)
        {
            case 4: case 6: case 9 : case 11: //thang 4,6,9,11 co 30 ngay
                songay+= 30; 
                break;
            case 2:
                if(Nam % 4 == 0 && Nam % 100 != 0 || Nam % 400 == 0)//nam nhuan co 29 ngay
                {
                    songay+=29;
                }else{//nam binh thuong co 28 ngay
                    songay+=28;
                }
                break;
        default: songay += 31;//thang con lai co 31 ngay
        }
    }
    printf("\nNgay thu %d trong nam", songay);
}

Ví dụ tôi nhập Ngay=30, Thang =3, Nam=2020

Kết quả:

Nhap vao ngay: 30

Nhap vao thang: 3

Nhap vao nam: 2020

Ngay thu 90 trong nam

3. Tổng kết

Để thực hiện giải bài tập cho biết ngày nhập vào là ngày bao nhiêu của năm trong C bạn đọc cần phải có kiến thức cơ bản về ngôn ngữ lập trình C, bạn cần nắm vững cách nhập xuất căn bản và các cách sử dụng cấu trúc switch case trong C , vòng lặp for và các phép toán học cơ bản.