[英]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.