moi nguoi cho em hỏi là hàm đổi chỗ của em có đúng không ạ. em chạy thì ko sắp xếp được
#include<iostream>
#include<stdio.h>
#include<fstream>
#include<stdlib.h>
using namespace std;
//khai bao ham
void doiCho(int*a);//Ham doi cho
void sapXep(int*a,int n);
void xuat(int *a,int n);//Ham xuat
//===chuong trinh chinh===
int main()
{
//khai bao tep
ifstream fin("daysonguyen.txt");
//khai bao bien
int n,i;
int *a;
//doc so phan tu tu tep
fin>>n;
//cap phat bo nho cho con tro
a=(int*)calloc(n,sizeof(int));
//doc vao day so tu tep
for(i=0;i<n;i++) fin>>a[i];
//dua ra day so vua doc
printf("Dãy số đọc từ tệp là: ");
xuat(a,n);
//sap xep day tang dan
sapXep(a,n);
//dua ra day so sau khi sap xep
printf("\nDãy số sau khi sắp xếp là: ");
xuat(a,n);
cout<<endl;
return 0;
}
//===dinh nghia ham===
void doiCho(int *a)
{
int i,j;
int tg;
if(a[i]<a[j])
{
tg=a[i];
a[i]=a[j];
a[j]=tg;
}
}
void sapXep(int*a,int n)
{
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
doiCho(a);
}
void xuat(int *a,int n)
{
for(int i=0;i<n;i++)
printf("%d ",a[i]);
}
để i, j thì chỉ dùng được mỗi bài đó thôi.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?