若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a[j]) {a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)

题目
若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a[j]) {a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。

A.对数组a进行插入排序(升序)

B.对数组a进行插入排序(降序)

C.对数组a进行选择排序(升序)

D.对数组a进行选择排序(降序)


相似考题
更多“若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a[j]) {a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。 ”相关问题
  • 第1题:

    阅读下面程序,则程序段的功能是 #include"stdio.h" main() { int c[]={23,1,56,234,7,0,34},i,j,t; for(i=1;i<7;i++) { t=c[i];j=i-1; while(j>=0 && t>c[j]) { c[j+1]=c[j];j--;} c[j+1]=t;} for(i=0;i<7;i++) printf("%d",c[i]); putchar('\n');}

    A.对数组元素的升序排列

    B.对数组元素的降序排列

    C.对数组元素的倒序排列

    D.对数组元素的随机排列


    正确答案:B
    解析:读懂两个循环的关系,是解这个题目的关键,本题的第一个for循环的作用是实现对数组元素的遍历,第二个循环的作用是排序。while(j>=0&&t>c[j]),这个语句是控制排序的关键语句,它即实现了比较两个元素大小的作用,又实现了元素向后移动的作用,不断地把大的数据向前移动,直到找到一个比它小的,或到数据的上界为止。

  • 第2题:

    以下程序段的作用是: 。 int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a[i]; j=i-1; while(j>=0&&t>a[j]) { a[j+1]=a[j]; j--; } a[j+1]=t; }

    A.对数组a进行插入排序(升序)

    B.对数组a进行插入排序(降序)

    C.对数组a进行选择排序(升序)

    D.对数组a进行选择排序(降序)


    G01G41X10Y30D02F50

  • 第3题:

    【单选题】以下程序段的作用是 。 int a[]={4,0,2,3,1},i,j,t; for (i=1;i<5;i++) { t=a[i];j=i-1; while (j>=0&&t>a[j]) {a[j+1]=a[j];j- -;} a[j+1]=t; }

    A.对数组a进行插入排序(升序) B) C) D)

    B.对数组a进行插入排序(降序)

    C.对数组a进行选择排序(升序)

    D.对数组a进行选择排序(降序)


    对数组a进行插入排序(降序)

  • 第4题:

    以下程序段的功能是: int a[] = {4,0,2,3,1},i,j,t; for (i = 1; i < 5; i++) { t = a[i]; j = i-1; while (j >= 0 && a[j] < t) { a[j+1] = a[j]; j--; } a[j+1] = t; } … …

    A.对数组a进行插入排序(升序)

    B.对数组a进行插入排序(降序)

    C.对数组a 进行选择排序(升序)

    D.对数组a 进行选择排序(降序)


    B 试题分析:程序的功能是计算3 1 ×3 2 ×3 3 ×…×3 10 =3 55 .故选B。 点评:简单题,算法问题已成为高考必考内容,一般难度不大,像这种程序框图的填充问题,通过逐步运行结果,计算即可。

  • 第5题:

    【填空题】阅读下面程序,则程序段的功能是什么? #include<iostream> using namespace std; int main____ { int c[]={23,1,56,234,7,0,34},i,j,t; for____ { t=c[i];j=i-1; while____ {c[j+1]=c[j];j--;} c[j+1]=t; } for____ cout<<c[i]<<'t'; putchar____; return 0; }


    程序运行结果:1 分析: 此FOR循环的循环次数为2次。 第1次循环后:$RES=0; $A=3; $B=2。 第2次循环后:$RES=1; $A=5; $B=3。