01/10/2018, 16:23
Hoán vị 2 phần tử trong mảng
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void nhap(int &n)
{
do
{
printf("nhap n : ");
scanf("%d",&n);
}while(n<5 || n>30);
}
void nhapmang(int n,float a[])
{
int i;
for(i=1;i<=n;i++)
{
printf("nhap phan tu a[%d] = ",i);
scanf("%f",&a[i]);
}
}
void xuatmang(int n,float a[])
{
int i;
printf("----xuat mang-----
");
for(i=1;i<=n;i++)
{
printf("a[%d] = %.2f
",i,a[i]);
}
}
void mimax(int n,float a[])
{
int i;
float min=a[1],max=a[1];
float doicho;
for(i=1;i<=n;i++)
{
if(min>a[i])
min=a[i];
}
for(i=1;i<=n;i++)
{
if(max<a[i])
max=a[i];
}
printf(" min = %f
max = %f
",min,max);
doicho=min;
min=max;
max=doicho;
printf("--hien thi lai mang--
");
for(i=1;i<=n;i++)
{
printf("a[%d] = %f
",i,a[i]);
}
}
int main()
{
int n;
float a[100];
nhap(n);
nhapmang(n,a);
xuatmang(n,a);
mimax(n,a);
return 0;
}
Làm sao để đổi chỗ 2 phần tử trong mảng ạ, em làm như thế này mà k ra kết quả gì?
đề bài là tìm min, max, đổi chỗ và hiện thị lại mảng ạ
Bài liên quan
Array start with 0 .
em cũng thắc mắc vấn đề này, tại sao k bắt đầu từ 1, thì hay hơn chứ nhỉ ?