C++程序:创建带参数但无返回值的函数


在函数式编程中,函数用于创建模块化代码。在许多应用程序中,我们构建子模块以使我们的代码更易于编写、更易于调试,并且通过避免重复编写不必要的代码来提高效率。函数在实现这些特性方面发挥着作用。函数通常接受参数并产生结果。有时它可能不接受任何参数但仍然产生某些东西。在一些罕见的情况下,函数接受一些输入但不返回任何内容。本课程将讨论接受参数但不返回任何内容的 C++ 函数。

带参数但无返回值的函数

要定义这样一个带参数但没有返回类型的函数,返回类型必须为 void,并且参数列表中必须至少有一个参数。

语法

void function_name ( <type> argument1, <type> argument2, … ) {
   // function body
}

在这种情况下,要产生输出,我们只需打印一些内容,或执行任何类似显示的操作,或在函数内部执行某些任务而无需显示任何输出。让我们来看其中一个例子,并了解在 C++ 中的实现。在我们的示例中,我们将为 n 行打印一个星形金字塔,其中 n 是通过函数传递的参数。

算法

  • 定义一个函数 pyramid(),它将接收一个整数 n
  • 对于初始化 i := 1,当 i <= n 时,更新(将 i 增加 1),执行 -
    • 对于初始化 j := 1,当 j <= n - i 时,更新(将 j 增加 1),执行 -
      • 显示空格
    • 结束循环
    • 对于初始化 j := 1,当 j <= i 时,更新(将 j 增加 1),执行 -
      • 显示“*”
    • 结束循环
    • 换行
  • 结束循环
  • 结束函数体
  • 调用 pyramid()

示例

#include <iostream> #include <sstream> using namespace std; void pyramid( int n ) { for( int i = 1; i <= n; i++ ) { for( int j = 1; j <= n - i; j++ ) { cout << " "; } for( int j = 1; j <= i; j++ ) { cout << "* "; } cout << endl; } } int main() { pyramid( 15 ); }

输出

              * 
             * * 
            * * * 
           * * * * 
          * * * * * 
         * * * * * * 
        * * * * * * * 
       * * * * * * * * 
      * * * * * * * * * 
     * * * * * * * * * * 
    * * * * * * * * * * * 
   * * * * * * * * * * * * 
  * * * * * * * * * * * * * 
 * * * * * * * * * * * * * * 
* * * * * * * * * * * * * * *

此程序将为 n 行打印金字塔,这里 n 为 15。行号通过参数传递。由于它直接打印星号,因此没有返回值。让我们再看一个例子,我们接收一个数字并使用函数调用显示其反转。

算法

  • 定义 reverse() 函数,它将接收一个数字 n
  • rev := 0
  • 当 n > 0 时,执行
    • rev := (rev * 10) + (n 模 10)
    • n := floor of (n / 10)
  • 结束循环
  • 显示 rev
  • 结束函数
  • 使用任何数字调用 reverse() 函数,它将显示其反转。

示例

#include <iostream> #include <sstream> using namespace std; void reverse( int n ) { int rev = 0; while( n > 0 ) { rev = (rev * 10) + n % 10; n = n / 10; } cout << rev << endl; } int main() { cout << "Reverse of 14586 is: "; reverse( 14586 ); cout << "Reverse of 1250 is: "; reverse( 1250 ); cout << "Reverse of 15651 is: "; reverse( 15651 ); }

输出

Reverse of 14586 is: 68541
Reverse of 1250 is: 521
Reverse of 15651 is: 15651

这里,数字也作为参数从调用函数中获取,然后直接显示结果,因此没有返回值。

结论

函数用于使代码模块化并易于处理。在大多数情况下,我们使用函数来获取参数并在进行某些计算后返回某些值。但这并不是一个强制性的过程。在本文中,我们讨论了如何在 C++ 中编写一个接受参数但不返回任何内容的函数。例如,在我们的第一个示例中,为 n 行打印星形金字塔,其中 n 是输入,并且它直接显示结果。在第二个示例中,我们将数字作为参数传递,然后将其转换为其反转,并且没有返回结果,它在控制台上显示结果。

更新于: 2022年10月19日

2K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告