《c语言函数的基本学习教程》由会员分享,可在线阅读,更多相关《c语言函数的基本学习教程(7页珍藏版)》请在金锄头文库上搜索。
1、C语言函数的基本学习教程 C语言中的函数等价于Fortran语言中的子程序或函数也等价于Pascal语言中的过程或函数函数为计算的封装提供了一种简便的方法此后使用函数时不需要考虑它是如何实现的使用设计正确的函数程序员无需考虑功能是如何实现的而只需知道它具有些功能就够了在C语言中可以简单、方便、高效地使用函数我们经常会看到在定义后仅调用了一次的短函数这样做可以使代码段更清晰易读 到目前为止我们所使用的函数(如printf、getchar和putchar等)都是函数库中提供的函数现在让我们自己动手来编写一些函数C语言没有像Fortran语言一样提供类似于*的求幂运算符我们现在通过编写一个求幂的函数
2、power(m,n)来说明函数定义的方法power(m,n)函数用于计算整数m的n次幂其中n是正整数对函数调用power(2,5)来说其结果值为32该函数并非一个实用的求幂函数它只能处理较小的整数的正整数次幂但这对于说明问题已足够了(标准库中提供了一个计算xy的函数pow(x,y)) 下面是函数power(m,n)的定义及调用它的主程序这样我们可以看到一个完整的程序结构 includeintpower(intm,intn);/*testpowerfunction*/main()inti;for(i=0;i=0*/intpower(intbase,intn)inti,p;p=1;for(i=1;
3、i=0*/*(oldstyleversion)*/power(base,n)intbase,n;inti,p;p=1;for(i=1;iGetWindowText(str1);nGetWindowText(str2);/char*pstr=(LPTSTR)LPCTSTR(str1);intmybase=ttoi(str1);intmyn=ttoi(str2);intresult=power(mybase,myn);showStr=itoa(result,tmp,10);CStringstr=T(乘方运算结果为:);MessageBox(str+showStr,T(程序运行结果),MBOK);s
4、tr.ReleaseBuffer();intpower(intbase,intn)inti,p;p=1;for(i=1;i=0;version2*/intpower(intbase,intn)intp;for(p=1;n0;n)p=p*base;returnp; 其中参数n用作临时变量并通过随后执行的for循环语句递减直到其值为0这样就不需要额外引入变量i;power函数内部对n的任何操作不会影响到调用函数中n的原始参数值 必要时也可以让函数能够修改主调函数中的变量这种情况下调用者需要向被调用函数提供待设置值的变量的地址(从技术角度看地址就是指向变量的指针)而被调用函数则需要将对应的参数声明为指针类型并通过它间接访问变量 如果是数组参数情况就有所不同了当把数组名用作参数时传递给函数的值是数组起始元素的位置或地址它并不复制数组元素本身在被调用函数中可以通过数组下标访问或修改数组元索的值