21xrx.com
2024-12-27 20:35:32 Friday
登录
文章检索 我的文章 写文章
C++使用do-while语句输入整数,求各位数字之和
2023-06-28 04:30:12 深夜i     --     --
C++ do-while 整数 数字之和

在C++编程中,我们常常需要通过循环语句来对数据进行处理。其中,do-while语句是一种非常常用的循环语句之一。本文将介绍如何使用do-while语句输入整数,并求出该整数的各位数字之和。

首先,我们需要定义一个变量来存储输入的整数,以及一个变量来存储各位数字之和。代码如下:


int num, sum = 0;

接下来,我们可以使用do-while语句来输入整数。由于要求输入的是整数,我们可以使用cin函数来读取输入的值,同时为了避免无效输入,我们建议使用while循环来判断输入是否合法。具体代码如下:


do {

  cout << "请输入一个整数:";

  cin >> num;

  if (cin.fail()) {

    cin.clear();

    cin.ignore(10000, '\n');

    cout << "输入无效,请重新输入!" << endl;

  }

} while (cin.fail());

在上述代码中,我们首先输出提示信息,然后使用cin函数读取输入的整数值。如果输入的不是整数,cin函数将返回false值,我们可以使用cin.fail()来判断。如果输入无效,我们需要清空cin的标志位,并忽略之前输入的字符,以便重新读取输入。

如果输入的整数值合法,我们可以使用while循环来对该整数的各位数字进行处理,计算出各位数字之和。具体代码如下:


while (num > 0) {

  sum += num % 10;

  num /= 10;

}

在上述代码中,我们循环处理输入的整数值,由于整数的各位数字是从低位开始向高位,因此我们可以使用取模运算符%来获取该数字的最低位数值,然后将该数值累加到sum变量中。同时,我们可以通过除法运算符/来去掉该数字的最低位数值。当输入的整数值小于等于0时,循环结束。

最后,可以输出各位数字之和的结果。代码如下:


cout << "各位数字之和为:" << sum << endl;

这样,我们就可以使用do-while语句实现输入整数,并求出该整数的各位数字之和。完整的代码如下:


#include <iostream>

using namespace std;

int main() {

  int num, sum = 0;

  do {

    cout << "请输入一个整数:";

    cin >> num;

    if (cin.fail()) {

      cin.clear();

      cin.ignore(10000, '\n');

      cout << "输入无效,请重新输入!" << endl;

    }

  } while (cin.fail());

  while (num > 0) {

    sum += num % 10;

    num /= 10;

  }

  cout << "各位数字之和为:" << sum << endl;

  return 0;

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复