C語言使用指標對陣列指定位置進行插入元素
插入元素
輸入n個整數(1<=n<100),並在指定位置p處插入新元素,輸出最後的結果.
輸入格式:
每個測試包含2行輸入.第1行n,p,q,其中p,q分別表示需要插入的位置和需要插入的元素值(1<=p<=n+1, 且q符合int型資料範圍). 第2行表示n個整數. n,p,q均為0時,表示測試結束.
輸出格式:
輸出最後的結果
輸入樣例:
在這裡給出一組輸入。例如:
5 1 4
1 2 3 4 5
6 3 9
2 4 6 8 0 2
0 0 0
輸出樣例:
在這裡給出相應的輸出。例如:
4 1 2 3 4 5
2 4 9 6 8 0 2
#include<stdio.h>
int main(){
int a[100],n=1,p=1,q=1,*t=a,*s=a,*r=a;
while(1){
scanf("%d%d%d",&n,&p,&q);
if((n<0||n>100)||(n==0&&p==0&&q==0)){
return 0;
}
t=a;//令t指向陣列a首地址
s=t+n-1;//使s指向輸入的最後一個元素
for(;t<=s;t++)scanf("%d",t);//迴圈往陣列中新增元素
t=a;
r=t+p-1;//令r指向第p個元素
//將第p個元素以及之後面的每個元素進行往後賦值
for(;s>=r;s--){
*(s+1)=*s;
}
//對r指向的位置的陣列元素賦值
*r=q;
//完成對指定位置的元素新增
s=t+n;//使s指向新增完元素的陣列a的最後一個元素
for(;t<=s;t++)printf("%d ",*t);
printf("\n");
}
return 0;
}
這個是這個星期C語言上機課做的例題,因為剛學指標不久,便試著放棄使用陣列的取地址“[ ]”對陣列元素進行操作。
以上程式碼是可以實現以上例題功能的。
如有更好的做法,歡迎討論交流。
相關文章
- JavaScript 陣列 指定索引位置插入元素JavaScript陣列索引
- JavaScript陣列指定位置插入新元素JavaScript陣列
- 在JS陣列指定位置插入元素JS陣列
- C語言 指標與陣列C語言指標陣列
- JavaScript 陣列的指定位置插入多個元素JavaScript陣列
- C語言指標(三):陣列指標和字串指標C語言指標陣列字串
- c語言-運算子,陣列,指標C語言陣列指標
- (C語言)使用指標列印陣列的內容C語言指標陣列
- C語言程式設計基礎:指標陣列與陣列指標C語言程式設計指標陣列
- C語言學習歷程(十二)陣列指標與指標陣列C語言陣列指標
- C語言指標和陣列基礎C語言指標陣列
- C語言指標和陣列筆試題C語言指標陣列筆試
- C語言雜談:指標與陣列 (上)C語言指標陣列
- C語言雜談:指標與陣列 (下)C語言指標陣列
- C語言雜談:指標與陣列(下)C語言指標陣列
- js 在陣列的指定索引位置插入一個新的元素JS陣列索引
- C語言核心之陣列和指標詳解C語言陣列指標
- C語言_指標和陣列的幾種訪問形式C語言指標陣列
- 陣列filter方法對陣列元素進行過濾陣列Filter
- C++語言中陣列指標和指標陣列徹底分析(系列一) (轉)C++陣列指標
- 【C進階】28、指標和陣列分析指標陣列
- C語言:陣列和指標的區別C語言陣列指標
- 徹底搞清C/C++中一維陣列,二維陣列,指標,陣列指標和指標陣列以及指向指標的指標,行地址和列地址之間的關係C++陣列指標
- 陣列指標,指標陣列陣列指標
- 陣列指標 指標陣列陣列指標
- C語言 C語言野指標C語言指標
- C語言指標C語言指標
- C語言(指標)C語言指標
- C語言指標安全及指標使用問題C語言指標
- 指標陣列與陣列指標指標陣列
- 陣列指標和指標陣列陣列指標
- C語言系列之 指標與陣列總複習視訊教程C語言指標陣列
- 郝斌老師C語言學習筆記----指標和陣列C語言筆記指標陣列
- 補充內容:C++語言中陣列指標和指標陣列徹底分析 (轉)C++陣列指標
- C語言陣列C語言陣列
- C++ 指標陣列與陣列指標的區別C++指標陣列
- Swift中使用C語言的指標SwiftC語言指標
- C語言-指標操作C語言指標