c语言怎么从函数返回函数 c语言函数怎么返回值

C语言中怎样从被调函数中返回到调用函数

void

专注于为中小企业提供成都网站建设、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业章贡免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

a()

{

……

switch(a)

{

case

1:

{

printf("返回上一步");

?//怎样回去

//这里加一个return

}

case

2:

{

………………

}

default:

{

printf("输入错误,重新输入");

a();

}

}

}

c基生物写的那个函数可以借用一下,能知道执行的是哪个函数。

c语言怎样从分函数回到主函数

c语言怎样从分函数回到主函数的方法。

如下参考:

1.通过使用指针,在调用函数时,传递一个地址参数并使用指针更改其值;因此,修改后的值成为原始参数,如下所示。

2.使用指针返回的结果如下图所示。

3.使用structure:由于结构是用户定义的数据类型,因此可以定义一个包含两个整型变量的结构,在这些变量中存储越来越大和越来越小的值,然后使用该结构的值。

4.通过使用这个结构,下面显示的结果将返回,如下图。

5.通过使用数组,当数组作为参数跟踪传递时,基地址将传递给函数,因此对数组副本所做的任何更改都将更改为原始数组,如下图。

6.通过使用数组,返回的结果如下图所示。

c语言,返回函数的三种方法,请解释明白点,有例子更好了?

函数参数和

返回值

三种传递方式:值传递、指针传递和引用传递

引用与指针的比较

引用是

C++中的概念,初学者容易把引用和指针混淆一起。一下程序中,n

是m

的一个引用(

reference

),m

是被引用物(referent)。

int

m;

int

n

=

m;

n

相当于m

的别名(绰号),对n

的任何操作就是对m

的操作。所以n

既不是m

的拷贝,也不是指向m

的指针,其实n

就是m

它自己。

C++语言

中,函数的参数和返回值的传递方式有三种:值传递、指针传递和引用传递。

以下是“值传递”的示例程序。由于Func1

函数体内的x

外部变量

n

的一份拷贝,改变x

的值不会影响n,

所以n

的值仍然是0。

void

Func1(int

x)

{

x

=

x

+

10;

}

int

n

=

0;

Func1(n);

cout

“n

=

n

endl;

//

n

=

以下是“指针传递”的示例程序。由于Func2

函数体内的x

是指向外部变量n

的指针,改变该指针的内容将导致n的值改变,所以n

的值成为10。

void

Func2(int

*x)

{

(*

x)

=

(*

x)

+

10;

}

int

n

=

0;

Func2(n);

cout

“n

=

n

endl;

//

n

=

10

以下是“引用传递”的示例程序。由于Func3

函数体内的x

是外部变量n

的引用,x

和n

是同一个东西,改变x

等于改变n,所以n

的值成为10。

void

Func3(int

x)

{

x

=

x

+

10;

}

int

n

=

0;

Func3(n);

cout

“n

=

n

endl;

//

n

=

10

对比上述三个示例程序,会发现“引用传递”的性质象“指针传递”,而书写方式象“值传递”。实际上“引用”可以做的任何事情“指针”也都能够做,为什么还要“引用”这东西?

答案是“用适当的工具做恰如其分的工作”。

c语言怎么从调用函数回到主函数

#include"stdio.h"

#include"string.h"

struct account

{

char name[20];

int money;

}accounts;

void plm()

printf("您账户的余额:%d",accounts.money);

}

void qwe()

{

int cunkuan;  

printf("请输入存款金额:"); 

scanf("%d",cunkuan); 

accounts.money=cunkuan+accounts.money;

printf("   存款成功!\n账户余额:%d\n",accounts.money);

}

void poi()

int qukuan,i;

printf("请输入取款金额:");

while(1)

{

scanf("%d",qukuan); 

if(accounts.moneyqukuan)

printf("账户余额不足!你的账户余额:%d\n请重新输入:",accounts.money); 

}

else 

{

accounts.money=accounts.money-qukuan;

printf("取款成功!\n账户余额:%d\n",accounts.money);

break;

}

}

void main()

{

char name[20]; 

char mima[20]; 

int q;

printf("====================================================\n"); 

printf("====================================================\n");

printf("==================欢迎你使用银行系统================\n");

printf("====================================================\n"); 

printf("====================================================\n\n");

printf("请输入你的账户名:"); 

gets(name);

printf("请输入密码:");

gets(mima);

printf("\n");

if(strcmp(name,"zengxin")==0strcmp(mima,"12345")==0)

printf("登陆成功!\n");

int t=1;

while(t)//主函数加上一个while循环就好了,t表示是否继续使用系统,选择0时,t=1,即可退出系统了

{

printf("   1 存款   2 取款  3 开户\n"); 

printf("   4 销户   5 查询  0 退出\n请选择:"); 

scanf("%d",q); 

switch (q) 

case 1:

{

qwe();

break;

case 2:

{

poi();

break;

case 3:

break; 

case 4:

break;  

case 5:

{

plm();

break;

}     

case 0:

{

t=0;

break;

}

}

}

else 

printf("输入的账户名和密码错误!!");

}

c语言怎么从子函数的子函数直接返回主函数

C++可以通过异常处理的throw和catch来实现从子函数的子函数直接返回主函数,汇编语言可以用jmp指令跳转实现这个需求。

C语言主要靠函数调用和return在函数之间切换,很难做到在多层调用中直接返回主函数。虽然goto语句可以无条件跳转,但是必须在同一个函数中使用。

因此解决的方法也是用一个特殊的值作为需要返回的标志,然后在两层调用函数中都遇到该值就返回,但是这个方法也有两个前提:

1)你的两个子函数都是由返回值的函数

2)你选择的特殊值和函数正常的返回的取值不会冲突,不会引起二义性。

因此建议你的这个问题还是用C++ 的异常去解决比较好。

C语言如何从一个函数返回到另一个函数

menu函数做成死循环

int menu()                                 //菜单函数

{

void startTest();

void checkScores();

int exitTest();

int number;

int flag_exit=0;   //用来判断是否退出死循环

while(1)

{

system("cls");

printf("MENU\nPress 1 to start a test.\nPress 2 to check scores.\nPress 3 to Exit.");

scanf("%d", number);

switch (number)               //用户选择做测试,查分还是退出

{

case 1:

startTest();

break;

case 2:

checkScores();

break;

case 3:

exitTest();

flag_exit=1; ////////

break;

default:

printf("You have entered a wrong number, please enter again:\n");

break;

}

if(flag_exit==1)

{

break;

}

}

}


本文标题:c语言怎么从函数返回函数 c语言函数怎么返回值
转载注明:http://cdiso.cn/article/dooipes.html

其他资讯