gpt4 book ai didi

c - 从 C 中的另一个函数打印数组

转载 作者:太空宇宙 更新时间:2023-11-04 06:00:55 27 4
gpt4 key购买 nike

我在理解如何做这类事情时遇到了一些问题。我已经制作了一个函数来执行逻辑部分,例如声明一个获取数组 [i] 值的整数,并且这个数字是从数组中随机选择的(我认为)。无论如何,这是我完成的代码:

void array_test( int arr[]  , int size)
{
int i;
int random_number;

for(i = 0; i<size; i++){
random_number = (rand() %15 + 1);
arr[i] = random_number;
}

}

现在我的问题是如何使用另一个函数打印结果(代码有效,它确实打印出 1 到 15 之间的 15 个不同数字。我已将大小定义为 15,它在函数原型(prototype)参数上)?该函数将 char output[] 作为一个参数,int 类型的数组,以及 int 类型的大小。看起来像这样 output_result(char output[], int arr[], int size)

问题是我不明白我应该如何调用前一个函数中的内容并将其显示给用户。我承认这是一项任务,但我尝试了很多东西,但没有任何效果。问题是我必须使用 for 循环打印所有数组(?)值。它在这里只是变得困惑。我试图再次创建轮子,也就是说,通过复制粘贴函数 array_test 中的代码,但是函数 array_test 就不需要实现了。在下一次分配之前不得使用指针。

这是主要功能:

int main() {
int arr[SIZE];

srand(time(0));
array_test(arr, SIZE);
print_array("This is an array\0", arr, SIZE);

return 0;
}

最佳答案

如果要打印整个数组,可以这样做:

编辑:根据您提供给我们的主要功能,您的print_values_ver1 功能可能如下所示:

在您的主函数中,要查找数组大小,您可以使用:

int size = sizeof(array)/sizeof(array[0]);

然后将您的打印功能传递给您:

print_values_ver1("Some text\0", arr, size);

你的函数定义看起来像这样:

print_values_ver1(char[] output, int arr[], int SIZE) {

for (int z = 0; z < SIZE; z ++) {
printf("%d\n", arr[i]);
}
}

注意 %dprintf 函数的格式说明符(参见 documentation )。而 \n 是一个 newline 字符。

此代码遍历数组的每个元素并打印值(每行一个值)。

关于c - 从 C 中的另一个函数打印数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19483187/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com