Viết hàm sắp xếp mảng 1 chiều các số nguyên tăng dần
#include <iostream>
using namespace std;
void nhap(int a[], int &n);
void xuat(int a[], int n);
void sapxep(int a[], int n);
int main()
{
int a[100], n, m;
cout<<"Nhap slpt n= "; cin>>n;
nhap(a,n);
cout<<"cac phan tu mang A la:\n";
xuat(a,n);
cout<<endl;
cout<<"Sap xep mang tang dan: ";
sapxep(a,n);
}
void nhap(int a[], int &n)
{
for (int i=0; i<n; i++)
{
cout<<"A["<<i<<"]= "; cin>>a[i];
}
}
void xuat(int a[], int n)
{
for (int i=0; i<n; i++)
{
cout<<a[i]<<" ";
}
}
void sapxep(int a[], int n)
{
for (int i=0; i<n-1; i++)
{
for (int j=i+1; j<n; j++)
{
if (a[i] > a[j])
{
int tg=a[i];
a[i]=a[j];
a[j]=tg;
}
}
}
for (int i=0; i<n; i++)
{
cout<<a[i]<<" ";
}
}
Kết quả khi chạy chương trình:
Nhap slpt n= 5 A[0]= 2 A[1]= 4 A[2]= 3 A[3]= 6 A[4]= 1 cac phan tu mang A la: 2 4 3 6 1 Sap xep mang tang dan: 1 2 3 4 6
Viết hàm sắp xếp mảng 1 chiều các số nguyên giảm dần
Thật đơn giản là chúng ta đổi dấu > thành < ở dòng 37.
if (a[i] > a[j]) //đổi thành if (a[i] < a[j])
Code bài toán:
#include <iostream>
using namespace std;
void nhap(int a[], int &n);
void xuat(int a[], int n);
void sapxep(int a[], int n);
int main()
{
int a[100], n, m;
cout<<"Nhap slpt n= "; cin>>n;
nhap(a,n);
cout<<"cac phan tu mang A la:\n";
xuat(a,n);
cout<<endl;
cout<<"Sap xep mang giam dan: ";
sapxep(a,n);
}
void nhap(int a[], int &n)
{
for (int i=0; i<n; i++)
{
cout<<"A["<<i<<"]= "; cin>>a[i];
}
}
void xuat(int a[], int n)
{
for (int i=0; i<n; i++)
{
cout<<a[i]<<" ";
}
}
void sapxep(int a[], int n)
{
for (int i=0; i<n-1; i++)
{
for (int j=i+1; j<n; j++)
{
if (a[i] < a[j])
{
int tg=a[i];
a[i]=a[j];
a[j]=tg;
}
}
}
for (int i=0; i<n; i++)
{
cout<<a[i]<<" ";
}
}
Kết quả khi chạy chương trình:
Nhap slpt n= 5 A[0]= 2 A[1]= 4 A[2]= 3 A[3]= 6 A[4]= 1 cac phan tu mang A la: 2 4 3 6 1 Sap xep mang giam dan: 6 4 3 2 1
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧





