
很简单利用C语言中的动态数组就可以搞定
举个例子
#include <stdio.h>#include <stdlib.h>
#include <malloc.h>
#include <time.h>
int main()
{
srand((unsigned)time(NULL))
int n
int new_number
printf("please input a number:\n")
scanf("%d",&n)
int *p = (int *)malloc(n*sizeof(int))
for (int i=0i<ni++)
{
p[i] = rand()%100
}
printf("the array is:\n")
for (int i=0i<ni++)
{
printf("%d\t",p[i])
}
printf("add a new number to array:\n")
scanf("%d",&new_number)
int *q = (int *)realloc(p,(n+1)*sizeof(int))
q[n] = new_number
printf("after add a new number the array is:\n")
for (int i=0i<n+1i++)
{
printf("%d\t",q[i])
}
free(q)
system("pause")
return 0
}
通过动态数组就可以在原本已经满的数组后面继续添加元素
1、使用ArrayList来定义数组,Arraylist 有add、Insert方法,可以自由向数组中添加新数据。
2、向数组中增加一个元素,运行数组测试程序,并向控制台输出结果,
arraylist.Add(5)//添加数组元素
Console.WriteLine("2.数组列表的容量为{0},实际包含{1}个元素:",
arraylist.Capacity,arraylist.Count)
3、如果要向数组中批量增加数据,可以使用AddRange来实现:
arraylist.AddRange(newint[]{6,7,8})//在ArrayList末尾批量添加元素 。
4、如果要向数组的指定位置添加数据,可以使用Insert方法来实现:
arraylist.Insert(3,88)//添加数组元素。
5、如果不用ArrayList来定义数组,则将发现数组是固定的,那么可以人工给数据“变长”;用连接两个数组函数Concat,以及创建数组函数ToArray完成数组添加数据的任务。
6、通过“x=x.Concat(newint[]{5,6}).ToArray()”添加数据,运行数组测试程序,并向控制台输出结果。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)