C 使用指针插入数组元素的程序。
问题
编写一个 C 程序,由用户在运行时将元素插入到数组中,插入后将结果显示在屏幕上。如果插入的元素大于数组的大小,那么,我们需要显示 Invalid Input。
解决方案
数组用于在一个名称下保存一组公共元素。
数组操作如下 -
插入
删除
搜索
算法
参考一种在指针的帮助下将元素插入数组的算法。
步骤1:声明并读取元素的数量。
第二步:在运行时声明并读取数组大小。
第三步:输入数组元素。
第四步:声明一个指针变量。
第 5 步:在运行时动态分配内存。
第 6 步:输入应插入元素的位置。
步骤 7:在该位置插入新元素,右边的元素要移动一个位置。
示例
数组大小为:5
数组元素如下 -
1 2 3 4 5
插入新元素:9
在位置:4
输出如下 -
After insertion the array elements are:1 2 3 9 4 5
示例
以下是在指针的帮助下将元素插入数组的 C 程序 -
#include<stdio.h>输出结果#include<stdlib.h>
void insert(int n1, int *a, int len, int ele){
int i;
printf("Array elements after insertion is:\n");
for(i=0;i<len-1;i++){
printf("%d\n",*(a+i));
}
printf("%d\n",ele);
for(i=len-1;i<n1;i++){
printf("%d\n",*(a+i));
}
}
int main(){
int *a,n1,i,len,ele;
printf("输入数组元素的大小:");
scanf("%d",&n1);
a=(int*)malloc(n1*sizeof(int));
printf("enter the elements:\n");
for(i=0;i<n1;i++){
scanf("%d",a+i);
}
printf("enter the position where the element need to be insert:\n");
scanf("%d",&len);
if(len<=n1){
printf("输入要插入的新元素:");
scanf("%d",&ele);
insert(n1,a,len,ele);
} else {
printf("Invalid Input");
}
return 0;
}
执行上述程序时,它会产生以下输出 -
输入数组元素的大小:5enter the elements:
1
3
5
7
2
enter the position where the element need to be insert:
5
输入要插入的新元素:9
Array elements after insertion are:
1
3
5
7
9
2
以上是 C 使用指针插入数组元素的程序。 的全部内容, 来源链接: utcz.com/z/357437.html