无返回值的函数,只进行某种操作。
创新互联专注于企业全网整合营销推广、网站重做改版、绥宁网站定制设计、自适应品牌网站建设、HTML5建站、商城网站开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为绥宁等各大城市提供网站开发制作服务。
有返回值的函数,可以将某个变量或指针返回其调用函数。
两者形式上的区别如下:
无返回值:void
fun1();
有返回值:int
fun2();
调用的区别:
无返回值:
main()
{
……
fun1();
……
}
有返回值:
main()
{
int
a;
……
a=fun2();
……
}
无返回值的函数,只进行某种操作。
有返回值的函数,可以将某个变量或指针返回其调用函数。
两者形式上的区别如下:
无返回值:void fun1();
有返回值:int fun2();
调用的区别:
无返回值:
main()
{
……
fun1();
……
}
有返回值:
main()
{
int a;
……
a=fun2();
……
}
递归函数myPower的定义有逻辑错误,改成:
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
如果改成这样,会更高效:
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
例子1
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
int main()
{
int a=2,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
例子2
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
int main()
{
int a=3,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
可以实现很多功能啊,只是他不需要于使用者进行互动而已。
例如 int add(int a,int b) return a+b;
这些需要和用户交互信息的。
而void display(void) printf("Hello Word!");
这些不需要反之某一个有意义的值,但是也可以帮你实现某些功能。
个人观点,有错的地方望大神指正!