189 8069 5689

不返回值的函数c语言 c语言为什么要返回函数值

急求一个c语言定义函数的程序,有一个参数但无返回值,实现输出一行n

前面我们说的都是无参数无返回值的函数,实际程序中,我们经常使用到带参数有返回值的函数。

10年积累的成都网站建设、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有普安免费网站建设让你可以放心的选择与我们合作。

一、函数参数传递

1.形式参数和实际参数

函数的调用值把一些表达式作为参数传递给函数。函数定义中的参数是形式参数,函数的调用者提供给函数的参数叫实际参数。在函数调用之前,实际参数的值将被拷贝到这些形式参数中。

2.参数传递

先看一个例子:

void a(int); /*注意函数声明的形式*/

main()

{

int num;

scanf("%d",num);

a(num); /*注意调用形式*/

}

void a(int num_back) /*注意定义形式*/

{

printf("%d\n",num_back);

}

在主函数中,先定义一个变量,然后输入一个值,在a()这个函数中输出。当程序运行a(num);这一步时,把num的值赋值给num_back,在运行程序过程中,把实际参数的值传给形式参数,这就是函数参数的传递。

形参和实参可能不只一个,如果多于一个时,函数声明、调用、定义的形式都要一一对应,不仅个数要对应,参数的数据类型也要对应。

void a(int,float);

main()

{

int num1;

float num2;

scanf("%d",num1);

scanf("%f",num2);

a(num1,num2);

}

void a(int num1_back,float num2_back)

{

printf("%d,%f\n",num1_back,num2_back);

}

上面的例子中,函数有两个参数,一个是整型,一个是浮点型,那么在声明、调用、定义的时候,不仅个数要一样,类型也要对应。如果不对应,有可能使的编译错误,即使没错误,也有可能让数据传递过程中出现错误。

再看一个例子:

void a(int);

main()

{

int num;

scanf("%d",num);

a(num);

}

void a(int num)

{

printf("%d\n",num);

}

看上面的例子,形式参数和实际参数的标识符都是num,程序把实际参数num的值传递给形式参数num。有些人可能就不明白了,既然两个都是num,为什么还要传递呢?干脆这样不就行了吗:

void a();

main()

{

int num;

scanf("%d",num);

a();

}

void a()

{

printf("%d\n",num);

}

其实不然,这就要涉及到标识符作用域的问题。作用域的意思就是说,哪些变量在哪些范围内有效。一个标识符在一个语句块中声明,那么这个标识符仅在当前和更低的语句块中可见,在函数外部的其实地方不可见,其他地方同名的标识符不受影响,后面我们会系统讲解作用域的问题。在这儿你就要知道两个同名的变量在不同的函数中是互不干扰的。

前面将的都是变量与变量之间的值传递,其实函数也可以传递数组之间的值。看下面的例子:

void a(int []);

main()

{

int array[5],i;

for(i=0;i5;i++) scanf("%d",array[i]);

a(array);

}

void a(int array[])

{

int i;

for(i=0;i5;i++) printf("%d\t",array[i]);

printf("\n");

}

C语言中没有返回值的函数调用有什么意义呢?

可以实现很多功能啊,只是他不需要于使用者进行互动而已。

例如 int add(int a,int b) return a+b;

这些需要和用户交互信息的。

而void display(void) printf("Hello Word!");

这些不需要反之某一个有意义的值,但是也可以帮你实现某些功能。

个人观点,有错的地方望大神指正!

C语言中调用有返回值和无返回值函数有何区别??

无返回值的函数,只进行某种操作。

有返回值的函数,可以将某个变量或指针返回其调用函数。

两者形式上的区别如下:

无返回值:void

fun1();

有返回值:int

fun2();

调用的区别:

无返回值:

main()

{

……

fun1();

……

}

有返回值:

main()

{

int

a;

……

a=fun2();

……

}

关于c语言中的无return的函数

编译器是可以通过的。但这不是标准的写法,f函数没有声明,那么在C语言中默认是int类型的,应该有return 语句。 而且也不利于调试,因为如果要使用调试工具gbd的话,它进入函数后一定要有return才能跳出来。 我建议写代码一定要养成好的习惯,这样可以避免很多麻烦。

C语言中返回值的作用,什么函数可以不需要返回值

一个方法,可以有返回值,也可以没有!首先方法有参数,方法就像一个箱子,里面有机关。然后参数就是需要通过机关处理的东西,然后被机关处理完之后·最后从出口出来一个新的东西。那个就是返回的值。!你传进一个值~然后通过你写的方法处理,返回一个新的值,来达到你的目的。例如我写一个方法st()。方法的作用就是传递进去一个字符串,然后自动截取最后的两个字符。然后返回给你!

public string st(string str)

{

return str.substring(2,str.length-1);

}

然后你使用这个方法就会返回最后两位。。应该没写错把。。错了别拍我。

这个看的懂把。我是自学C#的。C也看过,其实大致上都是差不多的。!没有返回值的话就相当于是一个过程存储在方法里。可以反复的利用。只要需要这个过程的时候。直接用这个方法就可以了。多省事。

c语言函数问题:1.不需要返回值的函数,即直接让函数输出某个值或符号的,必须要定义成void类型才规范对?

void表示函数无返回值,也就不需要写return。如没有返回值的函数,void要写,否则默认返回值是int型需要return语句。

关于函数返回多个值,有很多方法:

一、不返回,函数返回值依然是void,但传值的时候传变量地址,那么在函数运行中改变变量地址里的值,函数运行结束,外面实参变量也改变了。比如void fun(int* a)。

二、不返回,函数通过全局变量传递值。

三、返回数组类型(包括结构数组),在函数中将要返回的多个值放在数组中返回,比如char *fun()。


分享标题:不返回值的函数c语言 c语言为什么要返回函数值
链接地址:http://jkwzsj.com/article/hiceph.html

其他资讯