#include <stdio.h> #include <stdlib.h> void func(int i) { if (i > 0) { func(i/2); } printf("%d ", i); } int main() { func(10); return 0; }
输入结果:
0 1 2 5 10
#include <stdio.h>
#include <stdlib.h>
int main()
{
//func(10);
int i = 10;
if (i > 0) // 10
{
{
if (i/2 > 0) // 5
{
{
if (i/2/2 > 0) // 2
{
{
if (i/2/2/2 > 0) // 1
{
{
if (i/2/2/2/2 > 0) // 0
{
//到这里停止,不在调用func
}
printf("%d
", i/2/2/2/2); //输出0
}
}
printf("%d
", i/2/2/2); //输出1
}
}
printf("%d
", i/2/2); //输出2
}
}
printf("%d
", i/2); //输出5
}
}
printf("%d
", i); //输出10
return 0;
}