[英]Void function doesn't print
我正在尝试编写代码以使用 function 打印值,但程序不打印任何内容,我不知道为什么。 我知道 void function 不返回任何值,所以我将 cout 放在 function 内,我调用是正确的
#include <iostream>
using namespace std;
void Print(int n){
for (int i = 0; i <= n; i++){
if (n%i == 0){
cout << i << ' ';
}
}
cout << endl;
}
int main(){
int x;
cin >> x;
Print(x);
return 0;
}
从Print
function 中的 1 开始循环。 您不能用 0 修改数字。不允许除以零。
当你运行你的程序时,它不会打印任何东西。 您必须先输入一个数字,然后按 Enter/Return,然后它应该会打印一些东西。
假设您这样做并且它仍然不打印,那将是因为您的Print
有一个从i = 0
开始的循环,然后您执行n % i
。 使用右侧操作数0
进行模%
运算是行不通的。 从i = 1
或其他>0
开始循环。
最后,您的程序将在return 0;
时在main
中终止; 就在第一个Print
之后。 这意味着您的大部分main
内容实际上不会被执行。 这可能是故意的,但请记住这一点。
修复这些问题并确保在程序运行时在程序中输入一个有效的数字,例如12
,它应该会打印一些东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.