c语言 以下程序运行后的输出结果是? 请详细说明

2025-04-10 13:47:35
推荐回答(2个)
回答1:

运行结果:
13715

过程:
i = 1时, n[1] = n[0] * 2 + 1 运算完得到:
n[] = {0,1,0,0,0} 打印输出 n[1]

i = 2时, n[2] = n[1] * 2 + 1 运算完得到:
n[] = {0,1,3,0,0} 打印输出 n[2]

i = 3时, n[3] = n[2] * 2 + 1 运算完得到:
n[] = {0,1,3,7,0} 打印输出 n[3]

i = 4时, n[4] = n[3] * 2 + 1 运算完得到:
n[] = {0,1,3,7,15} 打印输出 n[4]

n[] = {0,0,0,0,0}; 与 n[5] = {0,0,0,0,0};是一个意思。

回答2:

main()
{
int i,n[]={0,0,0,0,0};//定义一个数组n,包含五个元素,初始值都是0;
for(i=1;i<=4;i++) //从1开始,到4结束,对数组中的数字进行处理
{
n[i]=n[i-1]*2+1; //处理方式为,从第二个开始,每个元素的值是前面一个元素值的2倍再加1。
printf("%d",n[i]); //输出处理后的结果
}
}
最后的输出是1,3,7,15