funk函数c语言 c语言程序设计fun函数

c语言问题,求解答 。错误较多,明显的有:
1.funk函数里第二个for()分号写成了冒号;
2.输入函数没加取地址符号;
3.read函数定义时,N为常量(前面已经宏定义过了),因此不能再用N;
4.最后一句输出函数,应为“%d”,你用了个单引号;
5.函数定义不用分号,声明采用;
6.还有一个很关键的,read函数返回return a[i]实际上仅仅返回了数组的最后一个值 。要想返回整个数组 , 可以用指针 。
下面是在你的程序基础上修改的:
#include"stdio.h"
#define N 10
【funk函数c语言 c语言程序设计fun函数】int *read(int a[],int M)
{
int i;
for(i=0;i=M-1;i)
{
scanf("%d",a[i]);
}
return a;
// return a[i];
}
void funk(int a[],int n)
{
int i,j,t;
for(i=0;in-1;i)
{
for(j=i 1;jn;j)
{
if(a[j]a[i])
{
t=a[j];
a[j]=a[i];
a[i]=t;
}
}
}
}
main()
{
int a[5],i,n;
read(a,5);
for(i=0;i=4;i)
printf("%d",a[i]);
funk(a,5);
for(i=0;i=4;i)
printf("%d",a[i]);
}
C语言LONG用来SUM做这个RETURN输入56789
那么 x=56789
调用函数 fun
k=56789
sum=0
k=labs(k) 取绝对值 k=56789
然后 的do while循环 。sum每次累加k的个位数 , 同时k除10,
直到k'为0退出循环
所以 返回的sum值,就是k个各个位上的值
对于k=56789
sum=9 8 7 6 5=35
输出fun的返回值 为35
请问执行return a;为什么没有调用拷贝构造函数?。?/h2>函数调用不可能返回盏里面的东西,它必须产生一个临时变量,拷贝构造是必须的 。你用的什么编译器,我的vs2008同一个程序跟你返回的结果不一样,明显调用了拷贝构造 。
funk函数c语言的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言程序设计fun函数、funk函数c语言的信息别忘了在本站进行查找喔 。

    推荐阅读