1樓:橙心橙願
#include
int main(void);
int cp[100]={}; //新陣列int val=0;
int *p=arr;
int firstflag=0; //插入標誌,若=1表示已插入
printf("請輸入要插入的數:");
scanf("%d",&val);
int i;
for(i=0;i<10;)
else
}else
}printf("原始陣列:\n");
for(i=0;i<10;i++)
printf("\n");
printf("插入後的陣列:\n");
for(i=0;cp[i];i++)
printf("\n");
}結果:
請輸入要插入的數:9
原始陣列:
2 7 9 11 15 27 29 32 35 36插入後的陣列:
2 7 9 9 11 15 27 29 32 35請輸入要插入的數:16
原始陣列:
2 7 9 11 15 27 29 32 35 36插入後的陣列:
2 7 9 11 15 16 27 29 32 35
2樓:匿名使用者
根據你的要求,已經完成:
說明:程式的核心思想就是:首先定位x在陣列中的位置(利用二分查詢實現)pos,然後根據位置,對陣列元素依次進行逆序移動,最後騰出1個空間,插入x。
程式配有詳細註釋,以幫助lz理解程式思想。
1 程式中,x即為待插入的整數。
2 本程式函式分工明確:
locate_x():定位x在陣列中的位置。
insert_x():插入到陣列中。
pirint_arr():列印陣列。
**如下:
#include
void locate_x(int x, int *pos, int *a);
void insert_x(int x, int pos, int *a);
void print_arr(int *arr);
/*a的最後一個-1是為將來插入時保留的位置*/
int a[21] = ;
/*len為a的有效長度*/
int len = 20;
int main()
/*定位:x將要插入到a的位置*/
void locate_x(int x, int *pos, int *a)
/*插入首部*/
if(x < a[low] ) /*插入尾部*/
doelse if(x < a[mid])
else /*此時,x==a[mid],故已找到位置,直接跳出。*/
}while(low+1 < high);/*low+1==high時,二者相鄰,可知pos已找到*/
*pos = high;
}/*按照你的要求,使用指標實現插入演算法。*/
void insert_x(int x, int pos, int *a)
*q = x;
len++;
}/*列印*/
void print_arr(int *arr)
{int i=0;
for(; i
程式當場完成,花了1個小時的時間。絕對原創,純手打!vc6.0除錯通過,至於截圖,lz自己執行看吧。
有問題請追問。
3樓:曾全
#include
int main()
p = q;
*p = num;
len++;
for(i = 0; i printf("\n"); } return 0;} 4樓: 因為是排好序的陣列,所以用二分法比較好,自己慢慢寫吧 如何編寫c語言程式?windows電腦 vc dev c 1.開啟桌面上的dev c 進入如下介面 2.快捷鍵 ctrl n 建立新源 3.輸入源 下面給出最簡單的hello,world源 include int main printf hello,world return 0 4.按下f11編譯並... 1 既然是簡單計算器,只需要實現加減乘除,同時每次支援兩個運算元和乙個操作符。同時約定,運算元為整型,對於加減乘輸出為整型,除法輸入為浮點型即可。2 例程 include int main 根據操作符號,輸入對應的執行結果。return 0 以上 就實現了最簡單的計算器,可以根據需要,在其上增加其它... 給,已經編譯執行確認,並給你做了乙個簡單的介面將這幾個功能都串聯了 include include define pi 3.14159 void isleapyear void getsum void getdegree void isint int main return 1 年代除以400等於0...關於C 程式的編寫,如何編寫C語言程式
c語言編寫計算器程式,c語言設計乙個簡單的計算器程式
C語言,數學計算程式,c語言 編寫乙個程式,計算任意輸入的整數的各位數字之和?