c语言怎么在数组最后再加一些数据。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言怎么在数组最后再加一些数据。相关的知识,希望对你有一定的参考价值。

很简单利用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=0;i<n;i++)

p[i] = rand()%100;

printf("the array is:\\n");
for (int i=0;i<n;i++)

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=0;i<n+1;i++)

printf("%d\\t",q[i]);

free(q);
system("pause");
return 0;

通过动态数组就可以在原本已经满的数组后面继续添加元素

追问

谢啦

参考技术A 变长数组追问

可以具体说一下吗,我再后面加了一些字符,但是加完之后最后怎么还有一些乱码。

c语言数组构造类型的特点

参考技术A

c语言数组构造类型的特点如下:

    数组是相同的数据类型的元素的集合。

    数组中的各元素的存储是有先后顺序的,他们在内存中按照这个先后顺序放在一起。

    数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。

    数据的大小是固定的。

数组(Array)就是一些列具有相同类型的数据的集合,这些数据在内存中依次挨着存放,彼此之间没有缝隙。
数组不是C语言的专利,Java、C++、C#、JavaScript、PHP 等其他编程语言也有数组。C语言数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。

以上是关于c语言怎么在数组最后再加一些数据。的主要内容,如果未能解决你的问题,请参考以下文章

c语言如何判断一个数组的最后一位的下标,求大神

C语言问题 怎么做?

c语言如果用字符串类型输出字符数组,字符数组最后一个是0,那么为啥会出现乱码

c语言怎么避免打印空数据?

c语言如何解析xml并将所有内容存入数组

c语言数组构造类型的特点