C经典分析题
#include <stdio.h> #include <stdlib.h> void func(int i) { if (i > 0) { func(i/2); } printf("%d\n", 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\n", i/2/2/2/2); //输出0
}
}
printf("%d\n", i/2/2/2); //输出1
}
}
printf("%d\n", i/2/2); //输出2
}
}
printf("%d\n", i/2); //输出5
}
}
printf("%d\n", i); //输出10
return 0;
}
青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲!