用C++语言编写函数int fun(int num),计算算整数num 的各位上的数字之积,并将计算结果作为函数值返回。如输入263,则返回 36(36=2x6x3)。要求在主函数中可以反复调用函数fun,连续输入多个正整数并计算结果,直到输入0为止。
时间: 2024-05-09 10:19:52 浏览: 97
```C++
#include <iostream>
using namespace std;
int fun(int num) {
int result = 1;
while (num != 0) {
result *= num % 10;
num /= 10;
}
return result;
}
int main() {
int num;
do {
cout << "请输入一个正整数(输入0结束):";
cin >> num;
if (num != 0) {
cout << "各位上的数字之积为:" << fun(num) << endl;
}
} while (num != 0);
return 0;
}
```
相关问题
用c++编写函数int fun( int num),计算整数num的各位上的数字之积,并将计算组果作为函数值返回。
好的,下面是使用 C++ 编写的计算整数各位数字之积的函数实现:
```cpp
#include <iostream>
using namespace std;
int fun(int num) {
int product = 1; // 记录数字之积的变量,初值为1
while (num > 0) { // 取出num的每一位数字,累乘到product中
int digit = num % 10;
product *= digit;
num /= 10;
}
return product; // 返回数字之积
}
int main() {
int num = 1234;
int product = fun(num);
cout << num << "的各位数字之积是:" << product << endl;
return 0;
}
```
在这个程序中,我们定义了一个函数 `fun`,用来计算整数各位数字之积。在函数中,我们定义了一个变量 `product`,用来记录数字之积,初值为1。然后,我们使用一个循环遍历整数 `num` 的每一位数字,将其累乘到 `product` 中。具体来说,我们用 `num % 10` 取出 `num` 的个位数字,累乘到 `product` 中,然后将 `num` 除以10,继续取下一位数字,直到 `num` 变成0。最后,我们返回 `product` 的值。
在主函数中,我们定义了一个整数 `num`,表示要计算各位数字之积的整数。然后,我们调用函数 `fun`,将 `num` 作为参数传入,计算数字之积,并输出结果。
需要注意的是,如果输入的整数 `num` 是负数,程序中需要做一些特殊处理。另外,如果 `num` 中包含0,那么乘积也为0。在实际使用中,需要根据实际情况进行修改。
请用编程语言C++,编写一个函数fun,将一个数字字符串转换为一个整数。
好的,以下是C++代码实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
int fun(string numStr) {
int num = 0;
for (int i = 0; i < numStr.length(); i++) {
num = num * 10 + (numStr[i] - '0');
}
return num;
}
int main() {
string numStr = "12345";
int num = fun(numStr);
cout << "字符串 " << numStr << " 转换后的整数为 " << num << endl;
return 0;
}
```
在这段代码中,我们定义了一个 `fun` 函数,该函数将一个数字字符串作为参数,并将其转换为一个整数。我们使用一个 `for` 循环遍历字符串中的每个字符,将其转换为数字并计算出最终的整数值。最后,我们在主函数中调用 `fun` 函数,并输出结果。
阅读全文