4、完善以下程序,填写括号内容:已有一个已排好序的整型数组,今输入一个整数,要求按原来排序的规律将它插入数组中。例如:原来数组的元素依次为4、6、8、41、56、77、102。若将42插入数组中,则插入后数组元素依次为4、6、8、41、42、56、77、89、102。#include stdio.hint main(){ int a[8]={ 4,6,8,41,56,77,102}; int number,i,j; scanf(%d,number); if(numbera[6]) a[7]=number; else { for(i=0;i8;i++) if(a[i]number) break; for(j=7;j();j--) a[j]=a[j-1]; a[i]=number; } for(i=0;i8;i++) printf(%6d,a[i]);return 0;}[/i][/i][/i]
A: =i
B: i
C: i+1
D: =i+1
A: =i
B: i
C: i+1
D: =i+1
举一反三
- 下列程序的运行结果是main(){ int a[6]={4,-5,7,8,2,0},i,j;for(i=0,j=5;i<;j;i++,j--){t=a[i];a[i]=a[j];a[j]=t;}for(i=0;i<;6;i++)printf(“%d ”,a[i]);}[/i][/i][/i]
- 下列代码段执行后的结果是 int[] a= {6,5,4,1,2,3}; int i,j; for(i=0,j=5;i<j;i++,j--){ a[i]= a[j] * a[j]; } for(i=0;i<6;i++){ System. out.print(a[i] +" "); }[/i][/i]
- #include [stdio.h]int main() { int a[3][3],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=3*i+j; for(i=0;i<3;i++) printf("%d ",a[i][1]); return 0;}[/i][/i]
- 以下程序段的运行结果是( )。 int a[]={1,2,3,4},i,j; j=1; for(i=3;i>=0;i--) {a[i]=a[i]*j; j=j*3; } for(i=0;i<4;i++) printf("%d [/i][/i]
- 若二维数组a 有 m 列,则计算任一元素a[ i ][ j ]在数组中位置的公式为( )。 (设a[0][0] 位于数组的第一个位置上) A: i* m + j B: j* m + i C: i*m + j - 1 D: i * m + j +1