當前位置:首頁 » 編程語言 » c語言對數組進行插值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言對數組進行插值

發布時間: 2023-04-18 23:27:39

c語言數組怎麼插入一個元素

#include<stdio.h>

#include<stdlib.h>

#define MAX 40

void insert(int*p,int n,int m)

{ int i,k;

for(i=0;i<n;i++)

if(p[i]>=m)

{ k=i;

break;}

for(i=n-1;i>=k;i--)

p[i+1]=p[i];

printf("%d ",k);

p[k]=m;


}

void sort(int*p,int n)

{

int i,j;

for(i=1;i<n;i++)

for(j=0;i+j<n;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("輸入野中則數據個數(n<40):");

d=scanf("%d",&n);

while(d!=1&&n>=40)

{ system("cls");

fflush(stdin);

printf("請重新輸入:");

scanf("培指%d",&n);


}

printf("請輸入數組元頌棚素:");

for(i=0;i<n;i++)

scanf("%d",a+i);

printf("請輸入要插入的數字:");

scanf("%d",&m);

sort(a,n);

insert(a,n,m);

for(i=0;i<n;i++)

printf("%d ",a[i]);

printf(" ");

}

Ⅱ 在c語言中,如何在數組中插入一個數

C語言向有序數組中插入一個數使該數組仍保持有序

#include<stdio.h>
int main()
{int n,i,j,t,k;printf("您喜歡的數組長度: ");
scanf("%d",&n);
int a[n],b[n+1];
printf("您喜歡的有序數組: ");
for(i=0;i<n;i++)
{scanf("%d",&a[i]);}
printf("請輸入想插入的數字 ");
scanf("%d",&k);
for(i=0;i<=n;i++)
{if(i==n) b[i]=k;else b[i]=0;}
for(i=0; i<n; i++)
{for(j=0; j<n; j++)
{b[j]=a[i++];}}
for(j=0;j<n;j++)
{for(i=0;i<n-j;i++)
{if(b[i]>b[i+1])
{t=b[i];b[i]=b[i+1];b[i+1]=t;}}}
for(j=0; j<n+1; j++)
{printf("%d ",b[j]);}}

Ⅲ 在c語言中,如何在數組中插入一個數

程序1:這個悄肢是輸入10個數
先排序
再插入一個數
再排序
數組大小你可以自己更改
#include
<stdio.h>
void
main()
{
int
i,j,m,temp,a[11];
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
for(j=i+1;j<10;j++)
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
for(i=0;i<10;i++)
printf("%d
",a[i]);
scanf("%d",&m);
for(i=0;i<10;i++)
if(a[i]>m)
{
temp=a[i];
a[i]=m;
m=temp;
}
a[10]=m;
for(i=0;i<11;i++)
printf("%d
",a[i]);
printf("\n");
}
程序爛運毀2:如飢備果題中已給排好序的數組
不必自己輸入的話
#include
<stdio.h>
void
main()
{int
a[11]={1,4,6,9,13,16,19,28,40,100};
int
temp1,
temp2,number,end,i,j;
printf("array
a:\n");
for
(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
printf("insert
date:");
scanf("%d",&number);
end=a[9];
if(number>end)
a[10]=number;
else
{for(i=0;i<10;i++)
{if(a[i]>number)
{temp1=a[i];
a[i]=number;
for(j=i+1;j<11;j++)
{temp2=a[j];
a[j]=temp1;
temp1=temp2;
}
break;
}
}
}
printf("now,array
a:\n");
for(i=0;i<11;i++)
printf("%d
",a[i]);
}

Ⅳ c語言 向有序數組中插入一個數,保持原順序不變,將新數組輸出

#include"stdafx.h"

#include<stdio.h>

intmain()

{

intm,n,i,j,h;

inta[17]={1,5,9,14,23,34,45,56,67,78,89,99,105,126,156};

scanf("%d,%d",&m,&n);

for(i=0;i<15;i++)//這里i<16;改成i<15;因為插入前數組有15個元素

{

if(m<=a[i])//這里m<a[i]改成m<=a[i]

{

for(j=14;j>=i;j--)

a[j+1]=a[j];

a[i]=m;

break;//這里加break;插入m後退出循環

}

}

for(i=0;i<16;i++)

{

if(n<=a[i])//這里n<a[i]改成n<=a[i]

{

for(j=15;j>=i;j--)

a[j+1]=a[j];

a[i]=n;

break;//這里加break;插入n後退出循環

}

}

for(i=0;i<17;i++)//這里i<16;改成i<17;因為插入後數組有17個元素

printf("%d",a[i]);

return0;

}

(4)c語言對數組進行插值擴展閱讀

C語言輸出數組的每一個值

#include<stdio.h>

intmain()

{

inta[8]={0,1,2,3,4,5,6,7};

printf("%d---%d--%d--%d--%d--%d--%d--%d",a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7]);

return0;

}

Ⅳ 在c語言中,怎樣在一個數組中插入一數

#include "stdio.h"
#include "stdlib.h"
void main()
{
int *p,k,h,*q,i,j,e;
printf("請輸入數組中的元素的個數最大值:");
scanf("%d"塌模,&k);
p=new int[k];
if(p==NULL)
{
printf("不能分配空間!");
exit(0);
}
printf("請輸入數組中的元素的個數:"); //告老可以輸入比數組長度小的個數
scanf("%d",&h);
printf("請輸入數組中的元素(分別輸入):\n");
for(i=0;i<h;i++)
scanf("%d",&p[i]);
if(h==k)
{
q=new int[k+1];
if(p==NULL)
{
printf("不能分配空間!");
exit(0);
}
for(i=0;i<k;i++)
q[i]=p[i];
printf("請輸入插入在第幾個數的後面和要插入的數:");
scanf("%d%d",&j,&e);
for(i=k;i>=j;i--)
q[i+1]=q[i];
delete p;
q[j]=e;
for(i=0;i<k+1;i++)
printf("%d\t"團友緩,q[i]);
delete q;
}
if(h<k)
{
printf("請輸入插入在第幾個數的後面和要插入的數:");
scanf("%d%d",&j,&e);
for(i=h-1;i>=j;i--)
p[i+1]=p[i];
p[j]=e;
for(i=0;i<h+1;i++)
printf("%d\t",p[i]);
delete p;
}

}
我使用動態數組來考慮兩種情況
1.數組滿的,需要從新申請數組,然後後移;
2.直接後移;

Ⅵ 關於C語言在數組里插入一個數

#include"stdio.h"
#include"string.h"
void main()
{
int a[11]={93,58,2,65,4,30,24,45,78,122}; //////////這里定義數組的時候,要寫上11,否則會認為該數組只有10個元素,那樣的話,亮鏈無法對其進行插入的。其他地方沒有錯誤
int i,j,temp,n;

for(i=0;i<10;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
printf("按從小到大的排列順序為:\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("請輸入你想插入數組的數字:");
scanf("%d",&n);
for(i=0;i<10;i++)
if(n<a[i])
{
for(j=9;j>=i;j--)
a[j+1]=a[j];
break;
}
a[i]=n;
for(i=0;i<11;i++)
printf("察顫%d ",a[i]);
printf("\敗鍵敗n");
}

Ⅶ 在c語言中,將一個數插入一個數組中,程序怎麼寫

有一個已排好序(從大到小)的數組有5個元素,從鍵盤輸入一個數,要求按原排序的規律將它插入到數組中
#include<stdio.h>
void main()
{
int i,x,j;
int a[6]={1,5,10,15,20};
scanf("%d"碼冊,&x);
for(i=0;i<5;i++)
if(x<族並a[i])
{
j=i; /*當這個數比當前數小時,用j記住當前位置,即j=i,中斷循環。比當前數大時繼續下一個(小應當在左側,大則在右側) */
break;
}
for(i=5;i>=j;i--)
a[i+1]=a[i]; /*將位置j以後的數據都向後移一位*/
a[i+1]=x; /* 把要插入的數x放到a[i]中,因為i--後 i 比實際要插入的位置少1,所以真正插入的位置應該i+1*/

for(i=0;i<=5;i++) /*這時一共有6個遲穗宏數*/
{
printf("%d ",a[i]);
}
}

Ⅷ 在c語言中,將一個數插入一個數組中,程序怎麼寫

#include
void
main()
{
int
s[10]={1,2,3,4,5,6,7,8,9};
int
n;
printf("請輸入需要插入到數組中的位置:");
scanf("%d",&n);
//比如說插入到第三個位置,即s[2]中,則輸入3
int
num;
printf("請輸入需要插入的數:");
scanf("%d",&num);
for
(int
i=10-1;i>=n;i--)
{
s[i]=s[i-1];
}
s[i]=num;
printf("插入之後的數組:\n");
for
(i=0;i<10;i++)
{
printf("%d
",s[i]);
}
printf("\n");
}

Ⅸ C語言 數組插入

C語言中,數組是一組連續的相同類型的數據集合。 所以激高要在數組中插入元素,需要按照以下步驟:

1、找到插入點;

2、將插入點所在元素,及之後的所有漏鉛埋元素,都向後移動一返螞個單位;

3、將插入點賦值為要插入的元素。

以固定位置插入,代碼舉例如下:

#include<stdio.h>
voidinsert(int*a,intn,inti,intv)
//將長度為n的數組a,下標為i的位置插入值為v的元素。插入後,數組長度為n+1.
{
intj;
for(j=n-1;j>=i;j--)//將i及以後的後移一位。由於是固定位置插入,所以不需要查找插入位置。
a[j+1]=a[j];
a[i]=v;//插入元素。
}

intmain()
{
inta[5]={1,3,6,7};/五個元素數組,初始化四個值。
inti;

insert(a,4,2,5);//將5插入到a[2]位置。
for(i=0;i<5;i++)
printf("%d",a[i]);//輸出結果,為13567
return0;
}

Ⅹ 用C語言編寫一個線性插值程序

#include<stdio.h>

doubleLerp(doublex0,doubley0,doublex1,doubley1,doublex)
{
doubledy=y1-y0;
if(dy==0){
printf("除0錯誤! ");
return0;
}
returnx*(x1-x0)/dy;
}
intmain()
{
doublex0,x1,y1,y0,x,y;
printf("Inptux0y0x1y1x:");
scanf("%lf%lf%lf%lf%lf",&x0,&y0,&x1,&y1,&x);
y=Lerp(x0,y0,x1,y1,x);
printf("y=%lf ",y);
return0;

}