第二章之「二分查詢」(迭代實現,練習2 3 5)

2021-06-02 17:10:19 字數 778 閱讀 1080

#include #include #include #define buffer_size 10

void merge(int *a,int p,int q,int r)

q=(p+r)/2;

mergesort(a,p,q);

mergesort(a,q+1,r);

merge(a,p,q,r);

}void output(int *a,int len)

printf("\n");

}int binarysearch(int *a,int len,int v)

else if(velse

}return -1;

}int main()

printf("隨機生成的陣列:");

output(a,buffer_size);

//用合併排序使陣列元素從小到大排序

mergesort(a,0,buffer_size-1);

printf("從小到大排序後的陣列:");

output(a,buffer_size);

v=rand()%(buffer_size+5);

printf("隨機生成待查詢元素v=%d\n",v);

//若存在返回查詢到的第乙個等於v的元素所在陣列中的索引

index=binarysearch(a,buffer_size,v);

if(index!=-1)

else

system("pause");

}

第二章 練習。

1.正因子問題。include include int main printf d count return 0 注意 if if 如果是 if n i 0 count if i n i count 會比正確結果多一。可以用以下程式檢驗,看中間結果。include include int main ...

第二章練習

2 2 多條簡單訊息 將一條訊息儲存到變數中,將其列印出來 再將變數的值修改為一條新訊息,並將其列印出來。message this is a string.print message this is a string.message this is another string.print mess...

第二章練習

1 請用 實現 利用下劃線將列表的每乙個元素拼接成字串,li alex eric rain 該題目主要是考的字串的拼接方法,jion方法,s li alex eric rain s jion li 2 查詢列表中元素,移除每個元素的空格,並查詢以a或a開頭並且以c結尾的所有元素。li alec ar...