Bài viết được đăng tại nguyenlediep.com - không copy dưới mọi hình thức.
NLD Code - Viết chương trình nhập vào dãy số sắp xếp các phần tử theo giá trị giảm dần 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ố sắp xếp các phần tử theo giá trị tăng dần 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ố sắp xếp các phần tử theo giá trị tăng dần trong C.
Gợi ý
- Chúng ta sử dụng mảng, vòng lặp for và lệnh if để 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, j, n, tam;
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]);
Sử dụng vòng lặp for chạy từ 0 đến n-1 để so sánh
for(i = 0; i < n-1; i++){ }
Sử dụng vòng lặp for chạy từ i+1 đến nhỏ hơn n để so sánh
for(j = i+1; j<n; j++){ }
Sử dụng lệnh if để so sánh giá trị của 2 vòng lặp for
if(a[i] < a[j]){ }
Nếu điều kiện bên trên thỏa mãn ta có các dòng code như sau
tam = a[i]; a[i] = a[j]; a[j] = tam;
In ra câu thông báo sau khi dãy số được sắp xếp
printf("\n => Day so sau khi sap xep la: ");
Sử dụng vòng lặp for để in các giá trị đã sắp xếp
for(i = 0; i < n; i++){ }
In ra các giá trị đã được sắp xếp
printf("%6d",a[i]);
Code hoàn chỉnh
// http://nguyenlediep.com #include<stdio.h> #include<conio.h> main(){ printf("\n"); int a[50], i, j, n, tam; printf(" - Nhap vao so phan tu: "); scanf("%d",&n); for(i = 0; i < n; i++){ printf(" - Nhap phan tu: "); scanf("%d",&a[i]); } for(i = 0; i < n-1; i++){ for(j = i+1; j<n; j++){ if(a[i] < a[j]){ tam = a[i]; a[i] = a[j]; a[j] = tam; } } } printf("\n => Day so sau khi sap xep la: "); for(i = 0; i < n; i++){ printf("%6d",a[i]); } 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: