mdsk.net
当前位置:首页 >> C语言编程:用数组名作函数参数,编写一个对一维数... >>

C语言编程:用数组名作函数参数,编写一个对一维数...

#include #include #include float b(float arr[],int n); //

#includeint main() { int a[10]; int i,j; int t; printf("Input 10 integer:\n"); for(i = 0;i < 10;i++) scanf("%d",&a[i]); for(i = 0;i < 10;i++) for(j = 0;j < 10-i-1;j++) if(a[j] > a[j+1]) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } ...

肯定要考虑数组大小啊,不然源数组有5个元素,但你在被调函数中不知道数组长度为5,对第6个元素进行了操作,就会发生错误了.

并不是一定不能返回,而是要区分定义的一维数组类型。 1 当一维数组为静态类型时,即 static type var[N]; 的形式,这时是可以将数组名返回的。 2 当一维数组不是静态类型,即不存在static修饰时,数组为局部变量,这时不能将数组名返回。 当把...

你想得到的结果是最高分和学号,程序只能返回其中一个。你也可以定义pmaxScore存储求出来的最高分。这里指针调用的作用就是作为参数按址调用,你在这个函数外面声明一个long型的变量,可以直接传进去,函数运行之后这个变量会改变值。 void Find...

float aver(float a[ ]) { int i; float av,s=a[0]; for(i=1;i

可以用二维数组名作为实参或者形参,在被调用函数中对形参数组定义时可以指定所有维数的大小,也可以省略第一维的大小说明,如: void Func(int array[3][10]); void Func(int array[][10]); 二者都是合法而且等价,但是不能把第二维或者更高维...

arr只是一个地址指针,他指向地址,并不是地址本身。可以这样理解,数组相当于一个个房间,地址相当于房间号,指针相当于服务员站在房间门口用手指着房间号,告诉你现在是这个房间被调用,arr+3相当于告诉服务员向后移动3个房间后指着新的房间...

正确的 B 例如: f(int data[]); f(int *data); 其实是等价的,都是一个指针传递。上面两种无论那种都可以传递一个数组名,作为实参。 实参传递给的数组名,就是数组的首地址。 因此通过数组名,传递其实就是把数组的首地址给了形参,因此通过地...

#include #include int main() { void sort1(char **p1); void print(char **p2); static char *name[]={"zhang","wang","li","zhao","abe"}; sort1(name); print(name); return 0; } void sort1(char **p1) { int i,j; char *p; for(i=0;i

网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com