以下程序的输出结果为( )。main( ) { int i=010,j=10; printf("%d,%d\n",i++,j--);}A 11,9 B 9,

题目

以下程序的输出结果为( )。

main( )

{ int i=010,j=10;

printf("%d,%d\n",i++,j--);

}

A 11,9

B 9,10

C 8,10

D 9,9

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

第1题:

以下程序的功能是输出如下形式的方阵:

13 14 15 16

9 10 11 12

5 6 7 8

1 2 3 4

请填空。

include <stdio.h>

main( )

{ int i,j,x;

for(j =4;j 【 】;j--)

{ for(i = 1 ;i<=4;i++)

[ x=(j-1) *4+【 】;

printf( "%4d" ,x);

}

printf(" \n" );

}


正确答案:>=1或>0 i
>=1或>0 i 解析:程序的外层for循环控制输出数据的行数,故第一处填“>=1”或“>0”;内层循环控制每行输出的个数。在内层for循环中,语句x=(j-1)*4+______;用于控制输出方阵中的具体数据,由于这些数据与其所在的行、列(j,i)具有x=(j-1)*4+i的关系,故第二处填i。

第2题:

有以下程序 void fun(int*a,int i,int j) { int t; if(i<j) { t=a[i];a[i]=a[j];a[j]=t; i++; j--; fun(a,i,j); } } main() { int x[]={2,6,1,8},i; fun(x,0,3); for(i=0;i<4;i++) printf("%2d",x[i]); printf("\n"); } 程序运行后的输出结果是

A.1 2 6 8

B.8 6 2 1

C.8 1 6 2

D.8 6 1 2


正确答案:C
解析:函数fun()中用了一个if语句,当数组下标i小于数组下标j时,交换数组元素a[i]和a[j]的值,并使i值加1,j值减1。其功能就是把数组a中从下标i到j的元素首尾互换。主函数中定义一个数组,在定义该数组的时候缺省了定义长度,定义的同时将其初始化赋值,所以该数组的长度为初始化该数组时的元素的个数即4,接着调用 fun(a,0,3),其中将a数组的第一个元素的下标0和最后一个元素的下标3传给了函数 fun(),故执行完该函数后,数组a中的元素首尾互换,因此最后依次输出的数组a中值为 8,1,6和2。

第3题:

有以下程序

#include <stdio.h>

void fun(int *s,int nl,int n2)

{ int i,j,t;

i=nl; j=n2;

while(i<j) {t=s[i];s[i]=s[j];s[j]=t;i++;j--;}

}

main( )

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

fun(a,0,3); fun(a,4,9); fun(a,0,9);

for(k=0;k<10;k++)printf("%d",a[k]); printf("\n");

}

程序运行的结果是 ( )

A)0987654321

B)4321098765

C)5678901234

D)0987651234


正确答案:C

第4题:

以下程序的输出结果是( )。 void fun(int*a,int i,int i) {int t; if(i<i) { t=a[i[;a[i]=a[j];a[j]一t; i++;j--;

fun(a,i,j); } } main { int K[]={2,6,1,8},i; fun(x,0,3); for(i=0;i<1;i++)printf("%2d",x[i]); printf("\n"); }

A.1,2,6,8

B.8,6,2,1

C.8,1,6,2

D.8,6,1,2


正确答案:C
本题用了函数调用,fun中if语句成立则进行i,j的交换,用到主函势中则为把下标为0、3,1、2互换,因此,当执行完后X的数组为8,1,6,2,故选择C选项。

第5题:

有以下程序: # define N 20 fun(int a[], int n, int m) { int i, j; for(i=m; i>=n; i--)a[i+1]=a[i]; } main() { int i, a[N]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; fun(a, 2, 9); for(i=0; i<5; i++)printf("% d", a[i]); } 程序运行后的输出结果是______。

A.10234

B.12344

C.12334

D.12234


正确答案:C
解析:由于用了宏定义a[10]~a[19]均为0。函数fun的功能是把从a[n]到a[m]中的元素依次赋给后面的一个元素。调用了fun(a, 2, 9)以后,a[N]={1, 2, 3, 3, 4, 5, 6, 7, 8, 9, 10}。

第6题:

以下程序的功能是输出如下形式的方阵:

13 14 15 16

9 10 11 12

5 6 7 8

1 2 3 4

请填空。

main()

{ int i,i,x;

for(j=4; j______; j--)

{ for(i=1; i<4; i++)

{ x=(j-1)*4+______;

printf("%4d",x);

}

printf("\n");

}


正确答案:i
i 解析:本题使用了一个两重for循环输出如题所示的方阵。从外层for循环的最后一条语句prinff("\n");可以看出,外层for循环每次输出方阵的一行,由于方阵是4行所以外层循环会循环4次,又从j=4和卜可以看出这4次循环,循环变量i的值分别为4、3、2、1.故前一空应该填j>=1或者 j>0,以保证j等于0时循环结束。内层循环控制每行输出的4个数,其循环变量i从1递增到4,由于每行的4个结果也是差1递增的,所以将每次结果减去循环变量i的值为一个常数,每行分别是12、8、 4、0,而这些值正好与4次外循环中表达式(j-1)*4的值相吻合,故后一空应该填i。

第7题:

有以下程序: void fun(int *a,int i,int i) { int t; if(i<j) { t==a[i];a[i]=a[j];a[i]=t; i++; j--; fun(a,i,j); } } main() { int x[]={2,6,1,8),i; fun(x,0,3), for(i=0;i<4;i++) printf("%2d",x[i]); printf("\n"); } 程序运行后的输出结果是( )。

A.1268

B.8621

C.8162

D.8612


正确答案:C
解析:函数fun()中用了一个if语句,当数组下标i小于数组下标j时,交换数组元素a[i]和a[j]的值,并使i值加1,j值减1。其功能就是把数组a中从下标i到j的元素首尾互换。主函数中定义一个数组x,该数组有4个元素,接着调用fun(a,O,3),其中将a数组的第一个元素的下标0和最后一个元素的下标3传给了函数fun(),故执行完该函数后,数组a中的元素首尾互换,因此最后依次输出的数组a中值为8、1、6和2,所以,4个选项中选项C符合题意。

第8题:

以下程序:main(){inti=010,j=10;printf(“%d,%d\n“,i,j);}的输出结果为()

A、11,9

B、9,10

C、8,10

D、9,9


参考答案:C

第9题:

下列程序的输出结果是______。include main(){ int i=1,j=3; printf("%d,",i++); {int

下列程序的输出结果是______。#include <stdio.h>main (){ int i=1,j=3; printf("%d,",i++); { int i=0; i+=j*2; printf("%d,%d,",i,j); } printf("%d,%d\n",i,j);}

A.1,6,3,1,3

B.1,6,3,2,3

C.1,6,3,6,3

D.1,7,3,2,3


正确答案:B

第10题:

有下列程序: include void fun(int * s,int n1,int n2) { int i,j,

有下列程序: #include <stdio.h> void fun(int * s,int n1,int n2) { int i,j,t; i=n1;j=n2; while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--;} } main() { int a[10]={1,2,3,4,5,6,7,8,9,0},k; fun(a,0,3); fun(a,4,9);fun(a,0,9); for(k=0;k<10;k++)printf("%d",a[k]);printf("\n"); } 程序的运行结果是( )。

A.987654321

B.4321098765

C.5678901234

D.987651234


正确答案:C
解析:从题目的主函数入手,定义了一个一维数组并赋韧值,接着调用函数fun(),fun()函数的功能为使数组中的元素逆序,当调用 fun(a,0,3),将实参传递给形参实现数组a中a[0]-a[3]这4个元素逆序;同理调用fun(a,4,9)是将上步排列好的a数组中a[4]-a[9]这6个元素逆序;调用fun(a,0,9)是将数组中a[0]-a[9]这10个元素在逆序,再用printf()函数输出结果为5678901234,故选项C)正确。

更多相关问题