c语言入门函数调用问题,这个fun()我知道从右到左,第一步和第二步我知道,就是不懂第三步是怎么算?

作者&投稿:中胜 (若有异议请与网页底部的电邮联系)
初学c语言函数的一道题,fun()中没有值调用啥啊,还是不明白,麻烦说下执行过程~

嗯,是这样的,不过return只能退出当前函数,如果多个函数嵌套就不行了,要想整个退出用exit
例如:
fun1(){
return;
printf("fun1") ;
}

fun2(){
fun1();
printf("fun2") ;
}
main(){
fun2();
}
此时main函数调用fun2,然后fun2调用fun1,fun1直接return了,fun1没有打印,但是fun2打印了,如果想不打印fun2,把fun1里面的return改为exit就好了

这不是X++的问题。函数在返回值类型的后面加上,__cdecl或者__pascal,前者说明参数从右到左压栈,也就是从左到右运算,后者是正好相反。

z=fun(fun(x++,y++),fun(--x,--y));
在这个三个fun函数调用的过程中,先执行fun(--x,--y),再执行fun(x++,y++),最后执行外层的fun。
//fun(--x,--y)执行时--x先减再取值,此时实际执行的是fun(2,8),返回9,之后x的值为2,y为8
//fun(x++,y++)执行时先取值再加,此时实际执行的是fun(2,8),返回9,之后x的值为3,y为9
//最后fun(9,9),返回10


什么是函数调用?C语言
函数是C语言的基本组成元素,如果你要想实现函数的功能,那么你就必须学会正确调用函数。当我们调用一个函数时,需要明确函数名和实参列表。实参列表中的参数可以是常量、变量、表达式或者空,并且各参数之间要使用英文逗号分隔开来。在数学运算中,会遇到计算多个连续自然数之间的和的情况。例如要计算1~n...

C语言函数递归调用的疑问
main()中 result=fibonacci(5);调用fibonacci(5)if(n == 0 || n == 1)\/\/false return n;else\/\/true return fibonacci(4)调用fibonacci(4)if(n == 0 || n == 1)\/\/false return n;else\/\/true return fibonacci(3)调用fibonacci(3)if(n == 0 || n == 1)\/\/false return n;el...

C语言函数部分问题
打印出0后这层fun函数的调用结束,程序返回到调用fun(0)的地方向后执行,当初是fun(1)里面调用fun(0)的,所以当fun(0)结束之后继续执行后面的打印语句,此时的k为1,依次类似返回回去,在这个回去的过程中不断执行打印K值得语句,所以最后打印出0 1 2 3 4 5 另外,团IDC网上有许多产品团购...

C语言函数的调用
函数fun(int a,int b)仅仅是完成了形参a和b的交换,交换的结果并不改变实参c[i]和c[i+1],作如下修改 include<stdio.h> void fun(int *a,int *b){ int t ;t=*a;*a=*b;*b=t;} main(){ int c[10]={1,2,3,4,5,6,7,8,9,0},i;for(i=0;i<10;i+=2) fun(&c[i...

C语言问题。之前看过类似这样函数调用的题,说在函数调用过程中,形参的...
调用函数,实参不变只适用于传值引用的情况,注意看一下,你的main函数中调用f函数时,括号中的实参前面是加了&符号的,也就是说,把实参s数组的地址传递过去了,那么函数将会直接对s数组中的数据进行运算,所以这种情况下实参会发生改变

跟C语言函数调用及指针的使用有关的问题
估计是因为你返回了一个局部变量,也就是 multi 函数里面的 result[ DIM ] 变量,局部变量一旦在外部被引用或者被返回,会非常不稳定,建议你将 result[ DIM ] 作为引用来传递给函数,同时可以作为返回值,你试试下面代码,我没上机编译,是直接改出来的:double pResult[ DIM ];void multi( double...

c语言调用函数
C里面函数的调用必须先声明,如果定义函数在调用前面就可以不用声明。所以你这个if后面的void read();只是声明这个函数。然后read();才是调用。另外,你这里if没有大括号,所以满足条件会执行void read();这句。而且你这样应该编译通不过吧。if和else之间多了一个语句,read();...

C语言 释放空间函数调用问题
嘿嘿,大多数教科书都是这样写的,但以后你写程序时也这么写的话,老板直接扣你一半工资!因为这种情况会产生野指针。你可以这样试下:首先定义指针并申请内存,然后赋值,然后再释放p所指内存,最后切记:释放了内存后一定要加上一句:p = NULL,因为虽然p所指内存被释放了,但p还是指向原地址,这样野...

C语言函数问题
C++中在调用一个函数之前必须要有该函数的声明,而且要求存在该函数的定义。C中可以在调用定义在调用地之后的函数,比如:int main(){ func(); \/\/ 没问题 } void func(){} 但C++中不允许,所以你必须声明函数原形:void func();int main(){ func(); \/\/ 没问题 } void func(){} C借鉴了...

有关C语言函数调用 尤其是调用过程 最好再能解释一下形参和实参_百度知 ...
形式参数和实际参数 函数的参数分为形参和实参两种。在本小节中,进一步介绍形参、实参的特点和两者的关系。形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。形参和实参的功能是作数据传送。发生函数调用时,主调函数把...

云阳县15955568319: 一个C语言问题 关于fun()的用法 -
计巧阿沙: fun(6)的时候调用fun(3),执行fun(3)时调用fun(1),这没有错.fun(6)的时候调用fun(3),执行fun(3)时调用fun(1)执行fun(1)时打印“1”继续执行fun(3)的后续:打印“3” 继续执行fun(6)的后续:打印“6”所以就是1 3 6如果改写fun函数为 fun(int x) {printf("%d ",x);if(x/2>0) fun(x/2); } 那么结果就是6 3 1了

云阳县15955568319: C语言中,fun函数到底是干什么用的?
计巧阿沙: fun(int x,y) 有上面的出现,必然在主函数里有调它,FUN没有其它意思,只是在调时用到这个单词 上面的意思是调用主函数中的数值

云阳县15955568319: C语言问题求解,请编写函数fun 函数的功能是计算一串数的平均值,最大值,最小值,例如: -
计巧阿沙: #include <stdio.h> void fun(char *s,char *t) { int i,j=0; for(i=0;s[i];i++) if(i%2==0)t[j++]=s[i]; t[j]=0; } void main() { char t[80],s[80]; printf("输入字符串:"); gets(s); fun(s,t); puts(t); }

云阳县15955568319: 二级C语言fun函数 -
计巧阿沙: fun函数 C语言中,fun函数是用调用主函数的.它是指用fun来定义一个函数或是方法,这样在引用时可以用fun表示.比如fun(int x,y), fun(int x,y) 有上面的出现,必然在主函数里有调它,fun没有其它意思,只是在调时用到这个单词,上面的意思是调用主函数中的数值. 注意,C 语言标准库中没有该函数!fun函数是自定义函数,是使用来举例或作语法演示的,没什么特别含义,也可以换成别的字母,就如“张三李四”一样,只表示引用之前出现的函数,以调用它执行一些需求,fun(int x,int y)只是一个举例的函数名而已,以及其声明的参数类型.

云阳县15955568319: 在计算机C语言中 什么是fun函数? 希望可以讲的通俗点 最好有例子 谢谢! -
计巧阿沙: 1 fun不是关键字,可以用它作变量名,函数名等标识符,当它作函数名用时,函数功能由编程者指定. 2 因为fun是function(函数)的缩写,因此编程者经常用它作函数名使用,尤其是在二级考试题目中,基本上涉及到函数的题都用它作函数名. 3 将fun这个名称改成其他名称也是可以的,比如,改为abc,程序将正常运行.

云阳县15955568319: C语言中fun函数到底是干什么用的? -
计巧阿沙: C语言中,fun函数是用调用主函数的. 它是指用fun来定义一个函数或是方法,这样在引用时可以用fun表示.比如fun(int x,y), fun(int x,y) 有上面的出现,必然在主函数里有调它,fun没有其它意思,只是在调时用到这个单词,上面的意思是调用主函数中的数值.即自定义函数.

云阳县15955568319: C语言 请问下面程序中,fun是什么意思 -
计巧阿沙: 在main函数中,fun(7,3,a); 表示调用前面定义的fun (int x, int y, int z) 函数 并把7,3,a这三个参数分别传给x,y,z 不过~由于fun函数中没有返回任何值,所以~~还是原来的a要想得到那个等式z=x * x + y * y; 的结果 应在该语句下加一条 return z; 但是~这样一来,a就没有作用到了.不知道你的程序是要实现什么的

云阳县15955568319: c语言中的fun怎么使用 -
计巧阿沙: c语言中没有fun这个函数.你说的fun是你自己编写的一个子函数,你可以用自己编写的这个函数来实现你想要的功能,比如你看课本上的例子,就是调用了自己编写的fun函数而已.这个fun本身并不是像clscr()这样的函数,而是你自己赋予它功能的!你明白了吗?

云阳县15955568319: C语言问题,请编写函数fun,函数的功能是把字符串中的数字加1 -
计巧阿沙: 思路:遍历字符数组,判断字符是否是数字,如果是进行相关操作,最后输出字符串数组即可. 参考代码: #include <stdio.h> #include<string.h> void fun(char a[]){int i;for(i=0;i<strlen(a);i++)if(a[i]>='0'&&a[i]<='8') a[i]++;else if(a[i]=='9') a[i]='0'; } int main() {char a[100];gets(a);fun(a);puts(a);return 0; } /* 运行结果: abcABd24e9fg abcABd35e0fg */

云阳县15955568319: C语言,有以下说明和定义,则对fun函数的正确调用语句是() -
计巧阿沙: 答案是B 其中的b是一个函数的声明,声明了一个返回值为int * 的函数b.所以b是不能作为指针使用的,因此C是错误的.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网