有以下程序段int n,t=1,s=0;scanf("%d",&n);do{ s=s+t; t=t-2; }while (t!=n);为使此程序段不陷入死循环,

2024-11-27 20:35:34
推荐回答(2个)
回答(1):

第一次循环
s = s+ t = 0 + 1 = 1;
t = t -2 = 1 - 2 = -1;

第二次循环
s = s + t = 1 - 1 = 0;
t = t - 2 = - 1-2 = -3

所以 t 的值为所有负奇数
所以选 D

回答(2):

第一次循环 s = s+ t = 0 + 1 = 1; t = t -2 = 1 - 2 = -1; 第二次循环 s = s + t = 1 - 1 = 0; t = t - 2 = - 1-2 = -3 所以 t 的值为所有负奇数 所以选 D