itgle.com

阅读下面程序: include void main() { int i,j,row=0,column=0,m; static int a[3]阅读下面程序:include <iostream.h>void main(){int i,j,row=0,column=0,m;static int a[3][3]={ 100,28,72,-30,2,-100};m=a[0][0];for (i=0;i<3;i++)for (j=0;j<3;j++)if (a[i][j]<m){m=a[i][j];row=i;c

题目
阅读下面程序: include void main() { int i,j,row=0,column=0,m; static int a[3]

阅读下面程序:

include <iostream.h>

void main()

{

int i,j,row=0,column=0,m;

static int a[3][3]={ 100,28,72,-30,2,-100};

m=a[0][0];

for (i=0;i<3;i++)

for (j=0;j<3;j++)

if (a[i][j]<m)

{

m=a[i][j];

row=i;

column=j;

}

cout<<m<<","<<row<<","<<column<<endl;

}

该程序的功能是【 】,其执行结果为上丝【 】。


相似考题
更多“阅读下面程序: include <iostream.h> void main() { int i,j,row=0,column=0,m; static int a[3] ”相关问题
  • 第1题:

    下列程序用来判断数组中特定元素的位置所在,则输出结果为()。includeinclude

    下列程序用来判断数组中特定元素的位置所在,则输出结果为( )。 #include<conio.h> #include<iostream.h> int fun(int*p,int n,int*j) {int i; *j=0; for(i=0;i<n;i++) if(p[*j]<p[i])*j=i; return p[*j];} void main() {int a[10]={1,3,9,0,8,7,6,5,4,2)j;int j; fun(a,10,&j); cout<<j<<','<<a[j];}

    A.2,9

    B.3

    C.9

    D.3,9


    正确答案:A
    解析:由程序中的主函数main入手,调用fun函数。其中第一个实参为数组a的名字,数组名作为实参,传递的是数组的起始地址。所以在fun函数中指针D指向了数组的第一个元素a[0]。另外实参整型j传递的是引用,也就是j的地址。在fun函数中在for循环中,依次将当前元素p[i]与j指针值为标识的p[*j]进行比较,取较大的。最后循环后的结果就是p[*j]存放数组中的最大值,并且指针j为该值的标识位。可以看出数组的最大值是9标识位为2。

  • 第2题:

    有如下程序段#include "stdio.h"void fun(int *a,int *b,int *c,int *d,int *e){ int i,j,k,m; for(i=0;i< *a;i++) for(j=0;j< *b;j++)  for(k=0;k<*c;k++)  for(m=0;m< *d;m++)  ++*e;}main(){ int a=10,b=10,c=10,d=10,e=0; fun(&a,&b,&c,&d,&e); printf("%d\n",e);} 则程序段的输出结果是A.10000 B.1000 C.100 D.0


    正确答案:A
    在本题中,程序首先定义了一个无返回值的函数fun,该函数带有五个整型的指针形参变量,然后通过一个四层循环来操作++*e;语句,由于*与++运算符的优先级一样,它们都是自右至左结合的操作,因此,++*e等价于++(*e),这个操作可描述为:先用地址取值,然后对其进行自加,由于是通过传址传值法的,因此,还需要将相加后的结果传递到实参中。
    在主函数中,定义五个整型变量并分别赋初值,然后调用fun函数,传递的参数是刚定义的五个整型变量的地址,采用的是传址传值法,能为实参带回一个结果值。从fun函数中我们不难看出,当变量a,b,c,d分别为10时,循环总共执行10000次,即自加进行了10000次,而且每次自加后都改变了实参的结果。因此,循环结束后,变量e的值为10000。本题的正确答案是A。

  • 第3题:

    阅读下面程序:includevoid main(){int i,j,row=0,column=0,min;static int a[3][3]

    阅读下面程序: #include<iostream.h> void main() { int i,j,row=0,column=0,min; static int a[3][3]={100,28,72,-30,2,-100}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][jl<min) { min=a[i][j]; row=i; column=j; } cout<<min<<","<<row<<","<<column<<endl; } 该程序的执行结果为( )。

    A.-100,2,3

    B.-100,1,2

    C.100,1,1

    D.100,0,0


    正确答案:B
    解析:该程序是找到数组a中的最小值,然后输出其数值及行、列。首先将min的值赋值为a中的第一行第一列的数值。然后在for两层循环中利用if语句进行大小比较,求出数组最小值,即-100。它的位置为第二行;第三列。标识由0开始计数,所以是1,2。

  • 第4题:

    阅读以下程序: include void main() { static int a[][3]={9,7,5,3,1,2,4,6,8}; int

    阅读以下程序:

    include<iostream.h>

    void main()

    {

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

    int i,j,s1=0,s2=0;

    for(i=0;i<3;i++)

    for(j=0;j<3;j++)

    {

    if(i==j)s1=sl+a[i][j];

    if(i+j==2)s2=s2+a[i][j];

    }

    cout<<s1<<","<<s2<<endl;

    }

    则该程序的输出结果为【 】。


    正确答案:1810
    18,10

  • 第5题:

    阅读下列程序:includevoid main(){int i,row=0,column=0,min;static int a[3][3]={

    阅读下列程序: #include<iostream.h> void main() { int i,row=0,column=0,min; static int a[3][3]={100,28,72,-30,2,?100}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][j]<min) { min=a[i][j];

    A.-100,2,3

    B.-100,1,2

    C.100,1,1

    D.100,0,0


    正确答案:B
    解析: 该程序是找到数组a中的最小值,然后输出其数值及行、列。首先将min的值赋值为a中的第一行第一列的数值。然后在for两层循环中利用if语句进行大小比较,求出数组最小值,即-100。它的位置为第二行,第三列。标识由0开始计数,所以是1,2。