编写一个函数sum(i),将输入的整形参数i(i≥0)的各位求和,返回求和结果。在main()函数中测试此函数,从键盘输入整数n(n∈[1,20]),然后再输入n个非负整数,对于每一个非负整数调用sum函数求各位数和,将结果输出到屏幕。
时间: 2023-05-31 21:18:04 浏览: 259
### 回答1:
编写一个函数sum(i),将输入的整形参数i(i≥0)的各位求和,返回求和结果。在main()函数中测试此函数,从键盘输入整数n(n∈[1,20]),然后再输入n个非负整数,对于每一个非负整数调用sum函数求各位和,将结果输出到屏幕。
### 回答2:
在使用C++编程时,实现一个可以计算整数各位数和的函数sum(i)是非常简单的。我们可以使用循环和取模的方式来实现该函数。具体实现如下。
int sum(int i)
{
int sum = 0; // sum用于存储各位数的和
while (i > 0)
{
sum += i % 10;
i /= 10;
}
return sum;
}
在上述代码中,使用while循环计算了整数i的各个位数之和,循环体内部的语句都是很简单的,就是计算i的末位数字并将其累加到sum变量中,然后将i除以10,使得它的末位数字被去掉。最后,返回sum就完成了计算。
为了测试这个函数,我们还需要编写一个main()函数,用于从键盘中读取输入,并对输入的整数进行求和操作。该main()函数实现如下。
int main()
{
int n; // n用于存储需要计算各位数的整数的数量
cin >> n;
while (n-- > 0)
{
int i; // i用于存储需要计算各位数的整数
cin >> i;
cout << sum(i) << endl; // 输出计算结果
}
return 0;
}
在上述代码中,首先从键盘中读取整数n,表示需要计算各位数的整数的数量。接下来,在while循环中,读取每一个需要计算各位数的整数i,并将其传递给sum函数进行计算,然后将计算结果输出到屏幕上。最后,整个程序结束,main函数返回0。
通过以上程序,我们就可以轻松地实现一个可以计算整数各位数和的函数,并且可以测试该函数的功能。
### 回答3:
编写一个函数 sum(i),实现将输入的整形参数i(i≥0)各位数字的求和,返回求和的结果。在 main() 函数中测试此函数,从键盘输入整数 n( n ∈[1,20] ),然后再输入 n 个非负整数,对于每一个非负整数调用 sum 函数求各位数和,将结果输出到屏幕。
1.函数的实现
sum 函数的实现如下:
```
int sum(int i)
{
int digitsum = 0; // 初始化各位数字的和为0
while(i > 0)
{
digitsum += i % 10; // 取每一位数字,并累加到digitsum中
i /= 10;
}
return digitsum; // 返回各位数字的和
}
```
2.main 函数的实现
在 main 函数中,先从键盘输入整数 n,并用一个循环来读取 n 个非负整数。对于每一个非负整数,调用 sum 函数求它的各位数和,并将结果输出到屏幕上。
```
int main()
{
int n;
cout << "请输入整数个数n(n∈[1,20]):";
cin >> n;
if(n < 1 || n > 20)
{
cout << "输入的n超出范围!" << endl;
return 0;
}
cout << "请输入" << n << "个非负整数:";
int a;
for(int i = 0; i < n; i++)
{
cin >> a;
if(a < 0)
{
cout << "输入的整数必须非负!" << endl;
return 0;
}
int digitsum = sum(a);
cout << a << "的各位数字之和为:" << digitsum << endl;
}
return 0;
}
```
3.完整代码如下
```
#include <iostream>
using namespace std;
int sum(int i)
{
int digitsum = 0; // 初始化各位数字的和为0
while(i > 0)
{
digitsum += i % 10; // 取每一位数字,并累加到digitsum中
i /= 10;
}
return digitsum; // 返回各位数字的和
}
int main()
{
int n;
cout << "请输入整数个数n(n∈[1,20]):";
cin >> n;
if(n < 1 || n > 20)
{
cout << "输入的n超出范围!" << endl;
return 0;
}
cout << "请输入" << n << "个非负整数:";
int a;
for(int i = 0; i < n; i++)
{
cin >> a;
if(a < 0)
{
cout << "输入的整数必须非负!" << endl;
return 0;
}
int digitsum = sum(a);
cout << a << "的各位数字之和为:" << digitsum << endl;
}
return 0;
}
```
阅读全文