单选题执行以下程序段后,s的值为(  )。int a[]={1,2,3,4,5,6,7,8,9}, s=0,k;for(k=0;k8;k+=2) s+=*(a+k);A 13B 16C 17D 45

题目
单选题
执行以下程序段后,s的值为(  )。int a[]={1,2,3,4,5,6,7,8,9}, s=0,k;for(k=0;k<8;k+=2) s+=*(a+k);
A

13

B

16

C

17

D

45

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在下述程序中,判断i>j共执行的次数是

main()

{int i=0, j=10, k=2, s=0;

for (;;)

{i+=k;

if(i>j)

{printf("%d",s);

break;

}s+=i;

}

}

A.4

B.7

C.5

D.6


正确答案:D

第2题:

执行下面的程序段后,变量k的值为( )。 int k=3,s[2]; s[0]=k; k=s[1]*10;

A.不定值

B.33

C.30

D.10


正确答案:A
解析:本题考查数组元素的初值及其引用。若数组为auto型,且没有进行初始化,其元素的值为不确定。本程序中虽然给s[0]赋了一个初值,但s[1]的值依旧是不确定的,所以执行语句k=s[1]*10后,k的值也不确定的。

第3题:

(9)以下程序运行后的输出结果是【9】

#include <stdio.h>

main( )

{int k=1,s=0;

do{

if{((k&2)!=0)continue;

s+=k;k++;

}while(k)10);

printf(“s=&d/n”,s);

}


正确答案:

9s=0

第4题:

有下列程序:main{int i,s=0,t[]={1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf(&qu

有下列程序:

main

{int i,s=0,t[]={1,2,3,4,5,6,7,8,9};

for(i=0;i<9;i+=2)s+=*(t+i);

printf("%d\n",s);

}

程序执行后的输出结果是( )。

A.A.45

B.20

C.25

D.36


正确答案:C
在for循环语句中自变量i从0开始,每次自加2,执行s+=*(t+i)语句,因为C语言规定数组名做表达式相当于数组的首地址,也就是第一个元素的地址。因此,*(t+i)代表数组的第i+1个元素。所以程序运行的结果是1+3+5+7+9=25,即变量S的值等于25。

第5题:

执行下面的程序段,s的值为 【 】 。

s=0:k=10

While k

s=s+10

k=k-2

Wend


正确答案:50
50 解析:While循环中的表达式>是—个数值表达式k,若k不等于0,则执行循环体;若k等于0,则结束循环。本题中循环体共被执行5次,每执行一次循环体,变量s将累加一次10,结果为“50”。

第6题:

执行下面的程序段后,变量k中的值为

int k=3, s[2];

s[0]=k; k=s[1]*10;

A.不定值

B.33

C.30

D.10


正确答案:A

第7题:

执行下面的程序段后,s的值为【 】。

s = 0:k = 10

While k

s=s+10

k=k-2

Wend


正确答案:50
50 解析:While循环中的表达式>是一个数值表达式k,若k不等于0,则执行循环体;若k等于0,则结束循环。本题中循环体共被执行5次,每执行一次循环体,变量e将累加一次10,结果为50。

第8题:

以下程序运行后的输出结果是【 9 】

#include <stdio.h>

main()

{ int k=1,s=0;

do{

if((k%2)!=0) continue;

s+=k;k++;

}while(k>10);

printf("s=%d\n",s);

}


正确答案:

第9题:

以下程序运行后的输出结果是【】。includemain(){int k=1,s=0; do{ if((k%2)!=0)continue;

以下程序运行后的输出结果是【 】。

include<stdio.h>

main()

{ int k=1,s=0;

do{

if((k%2)!=0) continue;

s+=k; k++;

}while(k>10);

printf("s+%d\n",s);

}


正确答案:s=0
s=0 解析:do-while循环结构的形式如下:
do
循环体
while(表达式);
循环的执行过程如下:
①执行do后面循环体中的语句。
②计算while后—对圆括号中表达式的值。当值为非0时,转去执行步骤1;当值为0时,执行步骤3。
③退出do-while循环。
在本题中先判断k是否为偶数,如果不是则结束本次循环,进行下—次的循环条件判定,由于没有改变k的值,k>10的不成立,退出do-while循环,执行后面的printf("s=%d\n",s);语句,因为s=0,所以输出结果为s=0。

第10题:

有以下程序段:int k=0, a=1, b=2, c=3;k=ac? c:k;执行该程序后,k的值是______。A.3B

有以下程序段: int k=0, a=1, b=2, c=3; k=a<b? b:a; k=k>c? c:k; 执行该程序后,k的值是______。

A.3

B.2

C.1

D.0


正确答案:B
解析:第一个表达式得到k=2,对于第二个表达式,因为k=23,k仍然赋值为k。因此最后k值为2。

更多相关问题