方法為:輸入一個數據x,將數組中的數據與x逐一比較,如果大于x,記錄下數據的下標,然后此數據下標和其后的數據的下標都加一,相當于都向后挪一位,然后將x賦值給數組的那個下標。
網站建設公司,為您提供網站建設,網站制作,網頁設計及定制網站建設服務,專注于成都定制網站,高端網頁制作,對成都柴油發電機等多個行業擁有豐富的網站建設經驗的網站建設公司。專業網站設計,網站優化推廣哪家好,專業成都網站推廣優化,H5建站,響應式網站。
#includestdio.h
int main()
int i, j, k, x, a[11] =(3, 6, 7, 9, 12, 14, 15, 27, 29, 31) ;
printf("插入前數組的數據是:") ;
for(i=0;i10;i++)
printf("%4d",a[i] ) ;
printf("\n") ;
printf("請輸入要插入的數據:") ;
scanf("%d",x) ;
for(i=0;i10;i++)
if(a[i]x)
break;
for(j=9; j=i; j--)
aLj+1] =aLj] ;
a[i]=x;
printf("插入后數組的數據是:") ;
for(i=0; i11; i++)
printf("%4d",[i] ) ;
return 0;
擴展資料:
數組的使用規則:
1.可以只給部分元素賦初值。當{ }中值的個數少于元素個數時,只給前面部分元素賦值。例如:static int a[10]={0,1,2,3,4};表示只給a[0]~a[4]5個元素賦值,而后5個元素自動賦0值。
2.只能給元素逐個賦值,不能給數組整體賦值。例如給十個元素全部賦1值,只能寫為:static int a[10]={1,1,1,1,1,1,1,1,1,1};而不能寫為:static int a[10]=1;(請注意:在C、C#語言中是這樣,但并非在所有涉及數組的地方都這樣,數據庫是從1開始。)
3.如不給可初始化的數組賦初值,則全部元素均為0值。
4.如給全部元素賦值,則在數組說明中, 可以不給出數組元素的個數。例如:static int a[5]={1,2,3,4,5};可寫為:static int a[]={1,2,3,4,5};動態賦值可以在程序執行過程中,對數組作動態賦值。這時可用循環語句配合scanf函數逐個對數組元素賦值。
參考資料:
百度百科-數組
插入元素必須需要數組元素要比元素個數多,給出如下例:
#include?iostream
using?namespace?std;
int?main()
{
int?arr[100];//聲明數組;
int?n;
cout"請輸入元素的個數:";
cinn;//有多少個數組元素
cout"請輸入元素:";
for(int?i=0;in;i++)
{
cinarr[i];
}
sort(arr,arr+n);//對數組進行從小到大排序
cout"請輸入要插入的元素"endl;
cinarr[n];
sort(arr,arr+n+1);//對插入的元素進行從小到大排序
cout"排序后的元素:";
for(int?i=0;in;i++)
{
coutarr[i]"?";
}
coutarr[n]endl;
return?0;
}
void??insert(?int?a[?],?int??n,?int??number?)
{
for?(int?i=0;in;i++)
{
if?(a[i]number)
continue;
else?
{
for?(int?j=n;ji;j--)
{
a[j]=a[j-1];
}
a[i]=number;
break;
}
}
if?(i==n)
a[i]=number;
}
#includestdio.h
#includestdlib.h
#define MAX 40
void insert(int*p,int n,int m)
{ int i,k;
for(i=0;in;i++)
?if(p[i]=m)
?{ ?k=i;
?break;}
?for(i=n-1;i=k;i--)
?p[i+1]=p[i];
?printf("%d\n",k);
? ? ?p[k]=m;
}
void sort(int*p,int n)
{
int i,j;
for(i=1;in;i++)
for(j=0;i+jn;j++)
if(p[j]p[j+1])
{ ?int t;
? ?t=p[j+1];
p[j+1]=p[j];
p[j]=t;
}
}
void main()
{
int a[MAX];
int n,i,m,d;
printf("輸入數據個數(n40):");
d=scanf("%d",n);
while(d!=1n=40)
{ ? system("cls");
? ?fflush(stdin);
printf("請重新輸入:");
scanf("%d",n);
}
printf("請輸入數組元素:");
for(i=0;in;i++)
scanf("%d",a+i);
printf("請輸入要插入的數字:");
scanf("%d",m);
? sort(a,n);
? insert(a,n,m);
? for(i=0;in;i++)
? printf("%d ",a[i]);
? printf("\n");
}
新聞標題:c語言數組添加元素函數,向數組中添加元素c語言
轉載來于:http://m.kartarina.com/article0/hegdoo.html
成都網站建設公司_創新互聯,為您提供動態網站、響應式網站、網站設計、小程序開發、移動網站建設、微信公眾號
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯