以下程序执行后的输出结果是: s<3,4> = 39
int n,a,s=0,p=1,i;
n=3;a=3;
for(i=1;i<=n;++i)
{p=p*a;s+=p;}
printf("\ns(%d,%d)=%d",a,i,s);
求解释过程
C语言求过程
分析:根据语句【if(y%3==0)】,说明当 y 是 3 的倍数时,就会执行【printf("%d",--y);】语句。--y 是先让 y - 1,最后再输出 y 的值。在循环中,y 的值从 9 开始,条件是 y > 0,那么这些数中,是 3 的倍数的整数有 9、6、3。因为最后是输出 y - 1 的值,所以输出的是...
C语言,求过程。
答案选B,你给的代码在输出语句中并没有输出空格,而答案每个选项的相邻两个数之间都用一个空格隔开,所以应该在输出的地方补上一个空格。分析:这题考查对二维数组的理解。声明一个二维数组时,如果给出了初始化列表,那么第一维的 [] 括号中的数字可以忽略不写,由编译器来计算初始化列表值的个数...
C语言,求过程?
分析:对于这类问题,循环的次数太多,不用每步运算的写出来,找出其中的规律即可 这里先把 i 赋给 x,最后是输出 i,并且第一个判断有 ++x,即最后 x 是不等于 i 的。当判断条件【if(++x%2==0)】为真时,才再执行【if(x%3==0)】。当判断条件【if(x%3==0)】为真时,才再执行【if...
C语言,求过程。
分析:这题要注意的是,for循环的最右边有一个分号“;”,说明循环体是空语句,即循环体什么都不执行。主要是考查对循环三个表达式和逗号运算符的理解。一般来说,i++是先使用 i 的值,最后再 +1。但在这题的第三个循环表达式(最右边)中,有 i++, s += i,因为它们之间有一个逗号运算符...
C语言,求过程?
运算过程:i = 0,k = 0,判断(i < 7 && p[i] % 2),0 < 7 为真,11 % 2 也为真,执行 k += p[i],i++,此时 k = 11,i = 1。i = 1,k = 11,判断(i < 7 && p[i] % 2),1 < 7 为真,13 % 2 也为真,执行 k += p[i],i++,此时 k = 24,...
C语言,求过程,选什么?
分析:这题重点在【if(b>=10)】和【if (b%3==1)】。当 b >= 10 时,执行 break,此时就会中断循环。b % 3 == 1,表示如果 b 除以 3 的余数等于 1,那么该条件为真,执行语句 b += 3 和 continue,不过 continue 的后面没有语句,再中断当次循环就没有意义了。当 b = 1、4、7...
C语言,求过程
分析:这题有两个自减运算符,一个是前缀,一个是后缀。后缀,y--,是先使用 y 的值,再 -1。前缀,--y,是先 -1,再使用 y 的值。运算过程(y 初始为 10):do{y--;}:执行 y--,此时 y = 9。while(--y):y 先 -1,此时 y = 8,再判断 y 是否为真,此时为真。do{y-...
C语言,求过程
分析:这题有两个自减运算符,一个是前缀,一个是后缀。后缀,n--,是先使用 n 的值,再 -1。即先判断 n 的值,再 - 1。前缀,--n,是先 -1,再使用 n 的值。即 n 先 -1,再输出 n 的值。运算过程(n 初始为 4):while(n--),n = 4,结果为真,n 再 -1,此时 n = ...
C语言,求过程
分析:n[]={0,0,0,0,0}表示数组n有5个元素,分别是n[0]=0,到n[4]=0,进入for循环后:当i=1时,n[1]=n[0]*2+1=1,i=1+1=2 当i=2时,n[2]=n[1]*2+1=3,i=1+1=3 当i=3时,n[3]=n[2]*2+1=7,i=1+1=4 当i=4时,n[4]=n[3]*2+1=15,i=1+1...
C语言,选什么,求过程
答案选B,即输出3,2,-1。分析:这题考查后缀自减和前缀自加运算符,以及逻辑与运算符 &&。后缀 z--,是先使用 z 的值,再 -1。前缀 ++x,是先 +1,再使用 x 的值。逻辑与运算符 &&,只有其两边的条件都为真时,总的结果才为真。当 && 左边的条件为假时,就不会计算其右边的表达式(...