问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于c语言中数组作为函数参数的函数之间调用问题

发布网友 发布时间:2022-04-25 02:10

我来回答

5个回答

热心网友 时间:2023-10-20 20:32

1、新建一个数组作为参数项目,如图所示:

2、添加一个array.c文件,如图所示:

3、包含stdio.h和stdlib.h头文件,如图所示:

4、输入main函数主体及返回值,如图所示:

5、定义一个数组arr,如图所示:

6、定义一个function函数,如图所示:

7、将数组作为参数传递给function函数,如图所示:

8、运行程序,输出结果,如图所示:

热心网友 时间:2023-10-20 20:32

这问题说明你对指针的运用还是不熟练的,既然是数组,作为函数参数传递的是数组首地址.
#include <stdio.h>
#include <stdlib.h>
void func1(int *array, int size) {
int i,temp;
for (i=0;i<size;i++) {
scanf("%d",&temp); //利用scanf输入赋值
array[i]=temp;
}
}
//数组array_b根据数组array_a的元素乘以项数获得元素值
void func2(int *array_a,int *array_b, int size) {
int i;
for (i=0;i<size;i++)
array_b[i]=array_a[i] * i;
}
//输出数组元素
void print(int *array, int size) {
int i;
for (i=0;i<size;i++)
printf("%d ",array[i]);
printf("\n");
}

int main(void) {
int size; //数组大小
int i;
int *array_a, *array_b; //声明数组array_a,array_b
scanf("%d", &size);
array_a=malloc(sizeof(int) * size);
array_b=malloc(sizeof(int) * size);
func1(array_a, size);
func2(array_a, array_b, size);
print(array_a,size);
print(array_b,size);
return 0;
}

热心网友 时间:2023-10-20 20:33

这问题说明你对指针的运用还是不熟练的,既然是数组,作为函数参数传递的是数组首地址.
#include
<stdio.h>
#include
<stdlib.h>
void
func1(int
*array,
int
size)
{
int
i,temp;
for
(i=0;i<size;i++)
{
scanf("%d",&temp);
//利用scanf输入赋值
array[i]=temp;
}
}
//数组array_b根据数组array_a的元素乘以项数获得元素值
void
func2(int
*array_a,int
*array_b,
int
size)
{
int
i;
for
(i=0;i<size;i++)
array_b[i]=array_a[i]
*
i;
}
//输出数组元素
void
print(int
*array,
int
size)
{
int
i;
for
(i=0;i<size;i++)
printf("%d
",array[i]);
printf("\n");
}
int
main(void)
{
int
size;
//数组大小
int
i;
int
*array_a,
*array_b;
//声明数组array_a,array_b
scanf("%d",
&size);
array_a=malloc(sizeof(int)
*
size);
array_b=malloc(sizeof(int)
*
size);
func1(array_a,
size);
func2(array_a,
array_b,
size);
print(array_a,size);
print(array_b,size);
return
0;
}

热心网友 时间:2023-10-20 20:34

函数在数组中的调用是以数组名为实参调用的,因为数组名就是数组的首地址,所以说对数组的调用是不需要返回值的,主调函数里面的数组值会随被调函数的形参数组改变而改变,当然这些都是在你以数组名作为实参的前提下

热心网友 时间:2023-10-20 20:34

如果传递值是指针(地址),也就是数组名,虽然在子函数里面,但复制过去的是地址,所以可以对地址里面指向的内容进行操作,也就是一个子函数中可以实现对多个值的操作,如果传递的是内容,则至多通过return 进行一个返回值操作,总之,要看你传什么
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何查被录取到的专业 怎样查被录取的专业 录取后怎样查询录取的专业 录取专业怎么查 已被录取怎么查专业 ghs网络语什么意思_ghs网络语意思出处含义介绍 纸箱企业管理软件 ghs什么意思网络(ghs什么意思网络用语) 《喜羊羊与灰太狼》大结局 0与任何数相加都得原数吗? 技嘉z390电竞专家主板可以装什么显卡? 天空飘来五个字,那都不是事,下一句是什么(歌词) Z390主板哪个字母最好? 形容心理寒冷的诗句有哪些? C语言中,数组作为参数,怎样在函数之间传递的? 技嘉B450主板一共有哪几款,特点是什么,既然有了B360,从性能上差距并不... c语言 数组作为参数传递 2080怎么测双排线主板 动物的成语 需求大量赞美寒风的句子,诗词,文章。请朋友们帮忙写一下,不胜感激! c语言中数组作为函数参数的问题。 【求好听的、有韵味的外文歌。】 技嘉 Z390 AORUS MASTER 和技嘉 Z390SESIGNARE 设计师 哪个好点? 有关冬天寒冷的诗句 离婚句子表达心情 C中怎么将数组作为参数全部传递给下一个函数 Z390 AORUS MASTER BIOS USB禁用了怎么开启? 一个女生我想把她变得开朗,留在我身边 微星Z390ACE战神和技嘉Z390AORUS MASTER 电竞大师哪个主板强一点? c语言怎么将数组作为函数参数传入? 冬日寒风的诗句 天空飘来五个字,这都不叫事是什么歌 C语言中如何将二维数组作为函数的参数传递 寒风很冷的诗句 天空飘来五个字顺口溜是什么? 有没有大佬研究技嘉z390主板的? c语言 数组作为函数参数怎样写 天空飘来五个字你都不叫事,这个歌词的歌名是什么 C语言用数组作函数参数练习求助? 天空飘来五个字那都不是事儿,是事也就来一会一会就没事。这句歌词的歌名叫什么 c语言中怎么用二维数组作为函数参数 天空飘来五个字!什么意思呢?? C语言中,数组做函数参数如何才能按值传递? 歌词找歌名百度搜索天空飘来朵朵云彩,歌声把我个性的打开带着美丽的期待来到草原寻找我们的爱夜里吹来 在C语言中,数组作为参数,是怎样在函数之间传递的啊?? 在C中想把数组作为函数的一个形参,是怎样的形式? 在C语言中,数组作为参数,是怎样在函数之间传递? 天空飘来五个字,那都不是事儿是那首歌的歌词 吉他调音准是怎么回事,怎么调 歌词里有 《天空飘来一片白云她的心上写满思念》 求歌名?