执行下面的程序段后,k的值是()。intk=1,n=325;do{k*=n%10;n/=10;}while(n)

题目
单选题
执行下面的程序段后,k的值是()。intk=1,n=325;do{k*=n%10;n/=10;}while(n)
A

3

B

30

C

523

D

325

参考答案和解析
正确答案: C
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有以下程序段 , 且变量已正确定义和赋值

for(s=1.0,k=1;k<=n;k++) s=s+1.0/(k*(k+1));

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

请填空 , 使下面程序段的功能为完全相同

s=1.0;k=1;

while( _[10]_______ ){ s=s+1.0/(k*(k+1)); _[11]_______ ;}

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


正确答案:

 

第2题:

以下程序的输出结果是【18】。

unsigned fun6(unsigned num)

{ unsigned k=1;

do{k *=num;num/=10;}

while (num);

return k;

}

main()

{ unsigned n=26;

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

}


正确答案:
12

第3题:

有以下程序

void change(int k[ ]){ k[0]=k[5];}

main()

{ int x[10]={1,2,3,4,5,6,7,8,9,10},n=0;

while( n<=4 ) { change( &x[n]) ; n++; }

for(n=0;n<5;n++) printf("%d ",x[n]);

printf("\n");

}

程序运行后输出的结果是

A)6 7 8 9 10

B)1 3 5 7 9

C)1 2 3 4 5

D)6 2 3 4 5


正确答案:A
答案 A
解析 : 子函数 void change(int k[]) {k[0]=k[5]}; 表示用一维数组中的第 6 个元素替换第 1 个元素 。 因此主函数的 4 次循环 , 都是用数组中 , 当前指针所指元素后的第 6 个元素替换该元素 ,因此本题的答案为 A 。此时数组中的元素是 “ 6,7,8,9,10 , 6,7,8,9,10 ” 。

第4题:

下面是一段Pascal程序: for h:=1 to n-1 do begin x:=A[h+1]; k:=h; while(k>=1)and(A[k]>x)do begin A[k+1]:=A[k]; k:=k-1 end; A[k+1]:=x end; 假设在程序开始执行时,数组A[1…n)是一组随机整数。下列答案中,最好地描述了最差情况下的程序执行时间(运行时间阶数)的是

A.O(n log2n)

B.O(n)

C.O(log2n)

D.O(n2)


正确答案:D

第5题:

有以下程序 void change(int k[]){k[0]=k[5];} main() { int x[10]={1,2,3,4,5,6,7,8,9,10},n=0; while(n<=4) { change(&x[n]); n++;} for(n=0;n<5;n++) printf("%d",x[n]); printf("\n"); } 程序运行后输出的结果是______。

A.678910

B.13579

C.12345

D.62345


正确答案:A
解析:本题考点为数组名作函数参数,当n=O时,把x[0]的地址传绐被调函数change,即将形参k与实参x指向同一个存储单元x[0],执行被调函数后,k[0]=6,即x[0]=6:当n=1时,形参k指向x数组的第1个数组元素所在单元,即 k[0]与x[1]共用同一存储单元,执行被调函数后,k[0]=7,即x[1]=7,依次类推得出x[0]到x[4]的值分别为6、7、8、 9、10。

第6题:

有以下程序( )。A main() {int k=5,n=0; do {switch(k) {case1: case3:n+=1; break; default;n=0;k--; case2: case4:n+=2;k--;break; } printf(“%d”,n); }while(k>0&&n<5); }

程序运行后的输出结果是

A. 235

B. 0235

C. 02356

D. 2356


正确答案:A

第7题:

下面是一段Pascal程序: for h:=1 tO n-1 dO begin x:=A[h+1]; k:=h; while (k>=1) and (A[k]>x) do begin A[k+1):=A[k]; k:=k-1 end; A[k+1]:=x end; 假设在程序开始执行时,数组A[1..n)是一组随机整数。下列答案中,哪一个最好的描述了最差情况下的程序执行时间(运行时间阶数)?( )

A.0(nlog2n)

B.O(n)

C.0(log2n)

D.O(n2)


正确答案:D

第8题:

有以下程序

main( )

{ int k=5,n=0;

do

{ switch(k)

{ case 1: case3: n+=1; k--; break;

default;n=0;k--;

case 2: case4: n+=2;k--; break;

}

printf("%d",n);

}while(k>0 && n<5);

}

程序运行后的输出结果是

A)235

B)0235

C)02356

D)2356


正确答案:A

第9题:

有以下程序 main() { int k=5,n=0; do { switch(k) { case 1: case 3:n+=1;k--;break; default:n=0;k--; case 2: case 4:n+=2;k--;break; } printf("%d",n); }while(k>0&&n<5); } 程序运行后的输出结果是

A.235

B.235

C.2356

D.2356


正确答案:A
解析:因为变量的初始值分别为“k=5,n =0”,所以程序第一次进入循环时,执行default语句,这时k=4,执行"case 4:”这个分支,结果是“n=2,k= 3”,打印出2;程序然后进行第二次循环,这时“n=2,k =3”,执行"case 3:”这个分支,结果是“n=3,k=2”,打印出3;程序进行第三次循环,这时“n=3,k=2”,执行“case 2:case 4:”这两个分支,结果是“n=5,k=1”,打印出5,这时因为n=5不满足n5的循环条件,因此退出循环,程序运行结束。因此输出结果是235。

第10题:

以下程序正确计算p=n!(n=0)的是()。

A.for(p=1.0,k=1;k=n;)p*=k++;

B.p= 1.0;k=0;while(kn)p*=++k;

C.p= 1.0;k=1;do{++k;p*=k;}while(k=n);

D.p=1.0;for(k=n;k=1;k--)p*=k--;


正确答案:AB

更多相关问题