1. Bài tập tìm chữ số lớn nhất của số nguyên dương N 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 vòng lặp while trong ngôn ngữ lập trình C.

Đầu vào sẽ là một biến nguyên dương N,  yêu cầu của bài toán là tìm chữ số lớn nhất của N.

2. Lời giải

Để giải được bài tập tìm chữ số lớn nhất của số nguyên dương N 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ề 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 N để gán giá trị của N, khai báo biến int max = 0 để gán giá trị chữ số lớn nhất của N, khai báo biến int i.

Bước 2: Nhập vào N với điều kiện N>=0, nếu không yêu cầu nhập lại.

Bước 3: Sử dụng if với điều kiện N=0, nếu thỏa mãn thì max=0.

Bước 4: Ta sử dụng vòng lặp while với điều kiện là khi biến N còn khác 0 thì vòng lặp tiếp tục, trong vòng lặp ta cho gán biến i bằng N%10  mỗi khi lặp, sử dụng if với điều kiện i>max nếu thỏa mãn thì gán giá trị i cho max (max=i) , còn biến N chia 10 mỗi khi lặp.

Bước 5: In biến max ra màn hình.

Chương trình giải bài tập tìm chữ số lớn nhất của số nguyên dương N trong C như sau :

#include<stdio.h>
#include<math.h>
int main()
{
    //khai bao bien N
    int N;
    //khai bao bien i
    int i;
    //khai bao bien max
    int max=0;
    do
    {
        //Nhap vao du lieu cua N
        printf("\nNhap N: ");
        scanf("%d", &N);
    }while(N < 0 && printf("\nLoi: n >= 0 !"));//Neu N<0 yeu cau nhap lai
    if(N==0)
    {
    	max=0;
    }
    while(N != 0)//Neu biên gan con khac 0 thuc hien vong lap
    {
    	i = N%10;//i = N chia lay du 10
    	if (i>max)//Neu i>max thi gan gia tri cua max = i
        {
            max=i;	
        }
        N = N / 10;//bien N chia 10
    }
    //in bien max ra man hinh
    printf("\nChu so lon nhat la: %d",max);
}

Ví dụ tôi nhập N=7801239

Kết quả:

Nhap N: 7801239

Chu so lon nhat la: 9

3. Tổng kết

Để thực hiện giải bài tập tìm chữ số lớn nhất của số nguyên dương N 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 vòng lặp trong C và các phép toán học cơ bản.