一起答
单选

下列为递归函数的是(  )

  • A.int func(int n)    {  if(n==0) return 0;
  • else return(n-1);    }
  • B.int func(int n)    {  if(n==0) return 0;
  • else return func(n-1);    }
  • C.int func(int n)    {  if(n==0) return 0;
  • else return sqrt(sqrt(n));    }
  • D.int func(int n)    {  if(n==0) return 0;
  • else return(--n);    }
试题出自试卷《高级语言程序设计(一)2017年4月真题及答案解析》
参考答案
查看试卷详情
相关试题
  1. (1)编写函数fa,计算并输出圆的面积;

    (2)编写函数fb,计算并输出圆的周长;

    (3)编写主函数,键入圆的半径R和运算标志m。使用 switch语句,当m=1时调用fa;当m=2时调用fb;当m=3时调用fa和fb。输出结果保留两位小数

  2. 将26个大写英文字母写入新建的文本文件 ch.txt。

  3. 为二维数组输入数据,输出其中最小的元素值及对应的两个下标。

    include

    #define M 3

    #define N 4

    void main()

    {

        int a[M][N],i,j, row, col, ___①____;   /*第一空*/

        for(i=0;i

             for(j=0; j

        min=a[0][0];

        row=col=___②____;   / *第二空*/

        for(i=0; i

             for(j=0; j

                   if(a[i][j]

                 {  min=___③____;       /*第三空*/

                       row=i; col=j;

                   }

         printf("min=%d, row-=%d, col=%d\n", a[row][col], row, col);

    }

  4. 键入一串字符,以回车换行符为结束标志,统计并输出其中数字字符的个数。

    include

    void main()

    {

       char ch; int n=0;

       ch=getchar();

       while(ch!='\n')

       { 

            if(___①____) n+;    /*第一空*/

            ___②____; /    *第二空*/}

           printf("n=%d\n",___③____);   / *第三空*/

    }

  5. 将从键盘输入的某个学生的学号、姓名和成绩保存至结构型变量并输出。

    include

    typedef struct student

    {

      int no;

      char name[20];

      float score;

    }___①____;   /*第一空*/

    void main()

    {

       STU st;

       scanf("%d%s%f", &st.no,___②____,&st.score);   /*第二空*/

       printf("No:%d\nName:%s\nScore:%.1f\n",___③____);   /*第三空*/

    }

  6. void main()

    {

      int a=10,y=0;

      do {

             a+=2; y+=a;

             if(y>30)  break;

         }while(-1);

          printf("a=%d, y=%d\n", a,y);

    }

  7. void main()

    {

       int k;

       char *s=" ABCDE";

       for(k=0;k<5;k+=2) pint("%s\n",s+k);

    }

  8. int i=1;

    int f(int j)

    {

        static int k=0;

        return(++k+j+i);

    }

    void main()

    {

       int j;

       for(j=1; j<=3; j++) printf("%5d",f(10));

       printf ("\n");

    }

  9. void main()

    {

      int n;

      char *city[]={"Beijing","Tianjin","Shanghai","Chongqing"};

      for(n=0; n<4; n+=2)  printf("%s\n",city[n]);

    }

  10. 执行语句 print("%sn","1+2+3\0=6");后输出结果是_______。