yegane8
شنبه 29 مهر 1391, 21:58 عصر
سلام
این کد مربوط به مرتب سازی درجی است اما نمی دونم چرا فقط تا عنصر سوم چک میشه
#include "conio.h"
#include "stdio.h"
int insertionSort(int n,int arr[]);
int main(){
int n;
printf("enter lenght of array");
scanf("%d",&n);
int num[n];
printf("enter the number to sort");
for(int i = 0; i < n; i = i + 1){
scanf("%d",&num[i]);
}
insertionSort(n,num);
getch();
return 0;
}
int insertionSort(int n,int arr[]){
int j=2;
int item,i;
item = arr[2];
i = j-1;
for(j=2;j<=n;j++) {
while(item<arr[i]){
arr[i+1] = arr[i];
i=i-1;
}
arr[i+1] = item;
}
for(int m = 0; m < n; m++){
printf("%d\t",arr[m]);
}
getch();
return 0;
}
لطفا راهنمایی کتید
باتشکر
این کد مربوط به مرتب سازی درجی است اما نمی دونم چرا فقط تا عنصر سوم چک میشه
#include "conio.h"
#include "stdio.h"
int insertionSort(int n,int arr[]);
int main(){
int n;
printf("enter lenght of array");
scanf("%d",&n);
int num[n];
printf("enter the number to sort");
for(int i = 0; i < n; i = i + 1){
scanf("%d",&num[i]);
}
insertionSort(n,num);
getch();
return 0;
}
int insertionSort(int n,int arr[]){
int j=2;
int item,i;
item = arr[2];
i = j-1;
for(j=2;j<=n;j++) {
while(item<arr[i]){
arr[i+1] = arr[i];
i=i-1;
}
arr[i+1] = item;
}
for(int m = 0; m < n; m++){
printf("%d\t",arr[m]);
}
getch();
return 0;
}
لطفا راهنمایی کتید
باتشکر