© 2017

Nhập vào dãy số in ra số lớn nhất và vị trí của số đó trong C

NLD Code - Viết chương trình nhập vào dãy số in ra số lớn nhất và vị trí của số đó trong C. Dãy số được nhập vào là dãy số nguyên và có độ dài không quá 50 phần tử.

Viết chương trình nhập vào dãy số in ra số lớn nhất và vị trí của số đó trong C. Dãy số được nhập vào là dãy số nguyên và có độ dài không quá 50 phần tử.

Câu hỏi

  • Viết chương trình nhập vào dãy số in ra số lớn nhất và vị trí của số đó trong C.

Gợi ý

  • Chúng ta sử dụng mảng, vòng lặp for để xử lý bài toán trên

Tiến hành code

Chèn các thư viện vào file hiện hành

#include<stdio.h>
#include<conio.h>

Khai báo mảng và các biến kiểu dữ liệu int

int a[50], i, n, max; 

In ra thông báo nhập số phần tử của dãy số

printf(" - Nhap vao so phan tu: ");

Nhận số phần tử người dùng nhập vào

scanf("%d",&n);

Chạy vòng lặp for từ 0 đến n phần tử

for(i = 0; i < n; i++){        

}

In ra thông báo nhập n phần tử

printf(" - Nhap phan tu: ");

Thêm các phần tử n vừa nhập vào mảng

scanf("%d",&a[i]);

Gán biến max là số lớn nhất cho phần tử thứ 0 trong mảng

max = a[0];

Sử dụng vòng lặp for chạy từ 1 đến n để so sánh số lớn nhất 

for(i = 1; i < n; i++){

}

Sử dụng lệnh if để xét phần tử thứ i có lớn hơn max

if(a[i] > max){

}

Nếu điều kiện bên trên thỏa thì biến max sẽ bằng phần tử thứ i

max = a[i];

In ra số lớn nhất sau khi đã xét ở trên

printf("\n => So lon nhat: %d",max);

Sử dụng vòng lặp for để chạy từ 0 đến n để tìm vị trí số lớn nhất

for(i = 0; i < n; i++){

}

Xét điều kiện phần tử thứ i bằng biến max

if(a[i] == max){

}

Nếu điều kiện bên trên thỏa mãn thì biến vt sẽ bằng i + 1 (vì i chạy từ 0)

vt = i + 1;

In ra vị trí của số lớn nhất sau khi đã xét ở trên

printf("\n => Vi tri cua gia tri lon nhat trong day la: %d",vt);

Code hoàn chỉnh

// http://nguyenlediep.com

#include<stdio.h>
#include<conio.h>
main(){
    printf("\n");      
    int a[50], i, n, max, vt; 
    printf(" - Nhap vao so phan tu: "); 
    scanf("%d",&n);
    for(i = 0; i < n; i++){
        printf(" - Nhap phan tu: ");     
        scanf("%d",&a[i]);
    }
    max = a[0];
    for(i = 1; i < n; i++){
        if(a[i] > max){
            max = a[i];
        }
    }
    printf("\n => So lon nhat la: %d",max);
    for(i = 0; i < n; i++){
        if(a[i] == max){
            vt = i + 1;
        }
    }
    printf("\n => Vi tri cua gia tri lon nhat trong day la: %d",vt);
    printf("\n >>>>> nldc.vn <<<<<\n");
}

Kết quả

  • Lưu C code thành file .cpp, nhấn F9 để biên dịch chương trình sau đó nhấn F10 ta được:
Chia sẻ
Nguyễn Lê Điệp

Nguyễn Lê Điệp

Có sở thích lập trình, viết lách nên đã từng tham gia ở một số diễn đàn, đến năm 2017 mới có điều kiện sáng lập ra Nguyễn Lê Điệp chấm Com. Được sinh ra ở Bình Định, đang học tập và làm việc tại thành phố Hồ Chí Minh...