一起答
单选

若有函数

Void fun( double  a[ ],int *n)   

{ …… }

以下叙述中正确的是

  • A.调用fun函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送
  • B.形参a和n都是指针变量
  • C.形参a是一个数组名,n是指针变量
  • D.调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组
试题出自试卷《2012年3月全国计算机等级考试二级C语言程序设计笔试试卷【答案+解析版】》
参考答案
查看试卷详情
相关试题
  1. 设文件test.txt中原已写入字符串Begin,执行以下程序后,文件中的内容为【 15 】 。

     #include   

     main( )

     { FILE *fp;

       fp= fopen( "test.txt”, ”w+”);

       fputs( "test",fp);

       fclose(fp);   

     }   

  2. 以下程序的输出结果是【 14  】

    #include   

    #include 

    #include    

    #include 

    main( )

    { char *p,*q,*r,   

      p=q=r=(char*)malioc( sizeof(char)*20);

      strcpy(p,"attaboy,welcome!");

      printf(”%c%c%c\n”,p[ 11 ], q[ 3 ],r[ 4 ]);

      free(p);

    }

  3. 以下程序的功能是输出a数组中所有字符串,请填空。

    #include 

    main( )  

    { char *a[ ]={”ABC”,”DEFGH”,”IJ”,”KLMNOP”};

      int   i=0;

      for(;i<4; i++) printf(”%s\n【 13  】 );

    }   

  4. 以下程序的输出结果是 【 11  】。

    #include   

    main( )

    {  char *ch[4]={"red',"green","blue"};

       int i=0;

       while( ch[i] )

       { putchar( ch[i][0]); i++;)  

    }  

  5. 有以下程序

    #include 

    main( )

    {  int   arr[ ]={1,3,5,7,2,4,6,8},i,start;

       scanf("%d", &start);

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

          printf(”%d”,arr[ (start+i)%8] ); 

    }

    若在程序运行时输入整数10<回车>,则输出结果为【 12 】。

  6. 有以下程序段

        s=1.0;

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

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

    请填空,使以下程序段的功能与上面的程序段完全相同。

        s=1.0; k=1;

        while( 【 9 】).

        { s=s+1.0/(k*(k+1)); k=k+1;}

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

  7. 以下程序的输出结果是【 10 】。

    #include .

    Main( )   

    { char a,b;   

      for( a=0; a<20;  a+=7) { b=a% 10;   putchar(b+'0'); }

    }

  8. 以下程序的输出结果是【 7  】。

    #include   

    main( )

    { int a=37;

      a+=a%=9; printf(”%d\n”, a),

    }

  9. 设a、b、c都是整型变量,如果a的值为1,b的值为2,则执行c = a++‖b++;变量b的值是【 8 】。

  10. 设变量a和b,已定义为int类型,若要通过scanf(”a=%d,b=%d”,&a,&b);语句分别给a和b输入1和2,则正确的数据输入内容是【 6  】。