一个c++程序,我不知道哪错了,能运行,但输不出结果,求各位大佬帮忙看下

2024-11-29 03:42:18
推荐回答(2个)
回答(1):

#include 
using namespace std;
void fun ( int x, int pp[], int *n )
{
int k=1,*s;
*n=0;
s=&pp[0];

// 错误1,搞清楚while的参数是什么意思 
while(k<=x) {
if(x%k==0) {
*s=k;
s++;
// 错误2,*的优先级不如++ 
(*n)++;
}
k += 2;
}
}

// 友情提示 
// C/C++ 没有规定 main和void main这种写法 
int main(void)
{
int x, aa[1000], n, i ;
cout<< "\nPlease enter an integer number:\n" ;
cin>>x;
fun(x, aa, &n ) ;
for( i = 0 ; i < n ; i++ )
cout<< aa[i]<<" ";
cout<
return 0;
}

回答(2):

把代码贴出来看看啦
你第2个类的那个函数不是虚函数啊,要和虚函数同名!