سلام اگه میشه برنامه من رو) در c(اصلاح کنید یه دنیا ممنون می شم
این برنامه 10 عدد گرفته و بعد از صعودی سازی انها را چاپ می کند
سپس کاربر 1 عدد برای جستجو در اعداد وارد شده وارد می کند
حال اگه این عدد موجود بود شماره ارایه اولیه و شماره ارایه صعودی شده این عدد رو چاپ کند.
مشکل برنامم رو با ؟؟؟ مشخص کردم
کد:
#include <stdio.h>
void getnumbers(int [], int);
void low_to_high(int [], int);
void printnumbers(int [], int);
int search(int [], int, int);
int main()
{
const int k=10 ;
int temp[10], no;
getnumbers(temp, k);
low_to_high (temp, k);
printf("Low to High:\n") ;
printnumbers(temp, k);
printf("\n\nEnter a Number to search in List:");
scanf("%d", &no);
if(search(temp, k, no) == -1)
printf("\nnumber %d not exist in list ", no);
else
printf("\nThe index of the %d in sorted array is:%d", no,???);
printf("\nThe index of the %d in orginal array is:%d", no,???);
return 0;
}
/* Get Numbers Function */
void getnumbers(int temp[], int len)
{
int i;
for(i=0; i < len; i++)
{
printf("enter number %d:",i+1);
scanf("%d",&temp[i]);
}
}
/* Low to High Function */
void low_to_high(int temp[], int len)
{
int i, j, item;
for(i = len - 1 ; i > 0; i --)
for(j = 0; j < i ; j++)
if(temp[j] > temp[j + 1])
{
item = temp[j] ;
temp[j] = temp[j + 1];
temp[j + 1] = item ;
}
}
/* Print Low to High Numbers Function */
void printnumbers(int temp[], int len)
{
int i;
for(i=0 ; i < len; i++)
printf("%d ",temp[i]) ;
}
/* Search Function */
int search(int temp[], int len, int no)
{
int mid, low = 0, high = len - 1;
while(low <= high){
mid = (low + high) / 2;
if(no < temp[mid])
high = mid - 1;
else if(no > temp[mid])
low = mid + 1;
else return mid;
}
return -1;
}