C++菜鸟问题 帮忙看看 谢谢
发布网友
发布时间:2023-04-23 05:19
我来回答
共4个回答
热心网友
时间:2023-10-08 22:21
你应该对C++的基础知道了解不多。
问题点1:
#include <iostream.h> //注意你写的的istream.h;一定要看清楚。
问题点2:
void decrement(int i);//你确定这个函数不返回任何值?实际上你要用这个函数返回一个整数。
修改为: int decrement(int i);
问题点3:
system这个函数包含在 windows.h 这个头文件中,而你并没有包含这个头文件。
问题点4:
main(void)
主函数这样写,是要求返回空值的,但你没有返回;
一般情况,如果不返回空值,不要要这样写,一般写作:void main();
当然你一定要这么写,在主函数最后一行记得写上:return NULL;
问题点5:
int decrement(i) //这个函数中的i没有定义类型,这个C++/C 编程中是不允许 的。
修改为: int decrement(int i)
在基本不修改原有程序的情况下,修改如下:
#include<iostream.h>
#include <windows.h>
int decrement(int i);
main(void)
{
int i=2;
i=decrement(i);
cout<<"i is "<<i<<"\n";
system("pause");
return NULL;
}
int decrement(int i)
{
cout<<"测试一下\n";
i--;
if(i>0)
decrement(i);
else
return(i);
}
以上代码在Viusal C++ 6.0编译下通过。
你应该再多看看书。
热心网友
时间:2023-10-08 22:21
你看的什么书呀。太老了吧也。换一本吧。
int decrement(int i)
{
cout<<"测试一下\n";
i--;
if(i>0)
{
decrement(i);
}
return(i);
}
热心网友
时间:2023-10-08 22:21
运行结果:
测试一下
i is 0
这个decrement(i)只要i〉0就会继续调用。 一直到i=0 才会结束递归调用
热心网友
时间:2023-10-08 22:22
三楼讲解的详细,是正解