C语言如何创建10个一样的数组?

141次阅读

共计 758 个字符,预计需要花费 2 分钟才能阅读完成。

  1. int initArr(int*arr,int length){
  2.         for(int i = 0;i<length;i++)
  3.                 arr[i]=rand()%1001;
  4. }
  5. int copyArr(int* arr,int length,int count){
  6.         for(int i=0;i<10;i++){
  7.                 int* ‘a+i'[10];               
  8.         }
  9. }

复制代码

RT,这样想用 ASCII 码加变量命名的方式 C 语言好像实现不了,会报错。有什么简短的能批量复制或是创建一样的数组的呢?
主要是要做排序算法的比较,但是一个数组排序完之后就不能复原供下一个排序算法了,就只能创建一样的。

网友回复:

注册 保存一个源数组,复制到一个临时数组上,每次排序完恢复 刚好我前两天写过跟你需求一样的东西,可以参考一下

八神庵 先 malloc 再 memcpy

hoofs malloc 也要解决命名的问题把?就是不想手动 abcdefg[10]

acm int* copyArr(int* arr, int length){int *temp = malloc(sizeof(int)*length);         memcpy(temp, arr, sizeof(int)*length);         return temp; }

八神庵 当你问你个问题的时候,这就表明你还没有领会 c 的指针的精髓

kernel 这道题超纲了我不会,但是我又很想水一贴。

sdqu 建议换 Pascal 吧

和风飘絮 卧槽,好聪明,真没想到,谢谢你不会也在上数据结构吧

Floppy 这样的话是一个连续的 10 个数组大小的一个 temp 数组吗

注册 void SpeedTest(void (**sorts)(int *, int), int n, int size) {复制代码 大佬你这堆星星看得我头晕

正文完
 0