問題描述:有乙個整型陣列a,共有1000個元素,即int a[1000]=,現在請設計乙個演算法,將每隔兩個的陣列元素刪除,求最後的剩餘乙個元素的下標和值。如果到結尾的話,從頭開始,迴圈刪除。例如有十個資料時
a[10] = ;
刪除的順序是3, 6, 9, 2, 7, 1, 8, 5, 10
剩餘的乙個元素是4,它的下標是3.
具體實現:
#include
#define n 1000
int main(
)index = 0;
count
= 0;
while
(1)}if(
count
== n-1)
/*index下標加一,一直找到乙個不為0的下標,表示空乙個數字*/
index++;
if(index =
= n)
while
(a[index]
== 0)
}/*index下標加一,一直找到乙個不為0的下標,表示空第二個數字*/
index++;
if(index =
= n)
while
(a[index]
== 0)
}a[index]
= 0;
count++
;}printf
("a[%d] = %d\n"
, i, a[i]);
return 0;
}結果:
a[603]=604
0
給主人留下些什麼吧!~~
一道機試題
and return the new length.do not allocate extra space for another array,you must do this in place with constant memory.for example,given input array a...
一道有意思的機試題
一道有意思的機試題 有四個學生 六門課程,要求使用三個頁面,第乙個頁面出現四個學生的選擇,選擇了學生後,到第二個頁面出現選擇了學生的列表,每個學生後面都有六門課程供學生選擇,選好課程後,到第三個頁面出現選擇了的學生和對應的課程列表。乍一看很簡單的一道題,不過我也用了乙個小時左右的時間,最快的乙個!題...
某公司的一道試題
該 實現了乙個客戶端回射程式,即從使用者獲得輸入的一行文字,發給伺服器,當接到伺服器的應答資訊後,列印該資訊。請閱讀 回答問題。include unp.h 可認為這行是正確的,包含了所有以下函式用到的標頭檔案。int main int argc,char argv void str cli file...