一起答

全国自考高级语言程序设计(一)精选试题及答案2

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 在主函数中输入不同大小的实型数组,计算数组中元素的平均值。

  2. 设x≠0且y为0或正整数,函数fun()计算并返回xy的值。

    double fun( double x, int y)

    {

    int i;

    double z;

    if(y==0)_______;

    else for(i=1,z=x;i<y;i++)z=_______;

    _______;

    }

  3. 编写程序,输出如下图形。

    * ** ** *

     * ** ** *

       * ** ** *

        * ** ** *

  4. #include<stdio.h>

    int main(void)

    {

    FILE *fp;

    char s[10]

    fp= fopen("text.dat","w");

    fputs("welcome",fp);

    fclose(fp);

    fp=fopen("text.dat","a+");

    fprintf(fp,"%d",55);

    rewind(fp);

    fscanf(fp,"%s",s);

    puts(s);

    fclose(fp);

    return 0;

    }

  5. 函数f()的主要功能是求p指向的m行5列数组中的最大数与最小数,并通过形参指针变量max和min返回。

    void f( float *p,._______,int m)

    {

    int i, j;

    *max =*min=_______;

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

    for(j=1;j<5;j++)

    {

    if (*max <*(p+i*5+j))_______;

    if (*min <*(p+i*5+j))*min*=(p+i*5+j)

     }

    }

  6. 从键盘为二维整型数组t1输入数据,输出该二维数组的转置t2

    #include< stdio.h>

    #define M2

    #define N3

    void main()

    {

    int t1[ M][N ] ,t2[N][M],i, j;

    printf("二维数组t1:\n");

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

    {

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

    {

    scanf("%d",________);

    printf("%5d",[i][j]);

    ________ =t1[i][j];}

    printf("\n");

    }

    printf("二维数组t2:\n")

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

    {

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

    }printf("%5d", 2[i](j]);

    printf("\n");

    }

    }

  7. #include <stdio. h>

    void fot( int *p1, int *p2)

    {

    printf("%d,%d\n",*(p1++),++*p2);

    }

    int x=371,y=269;

    main()

    {

    fot(&x, &y);

    fot(&x, &y);

    }

  8. #include

    void main() 

    int i=10,j=0; switch(i%3) 

    case 0:i--; j++; 

    case 1: --i; ++j; break; 

    default:++i; j--; 

    printf("i=%d,j=%d\n",i,j); 

    }

  9. #include

    <stdio. h>

    void main()

    {

    int i, a[5], *p;

    for(i=4;i>=0;i- -)

    *(a+i)=i

    for(p=a; p <a+5;p++)

    printf("%d", *p);

    printf("\n");

    }

  10. C程序中调用库函数sqrt(),则需要使用#include命令包含头文件_______。

  11. 执行语句x=5;if(x!=0)x=1;后,变量x的值是______。

  12. 字符串是由若干个字符组成的,其最后一个字符是______。

  13. 指针变量作为函数参数,形参和实参之间的数据传递方式属于_______传递方式。

  14. 以下程序段的输出结果是________。int x=3;do{printf("%3d",x-=2);} while(!(- -x));

  15. 面向对象的程序是由_______、对象(类的实例)和对象之间的动态联系组成的。

  16. C语言中,!运算符的结合方向是_________。

  17. 设char * st=" China, Beijing";,执行语句 printf("%s\n",st+6);后的输出结果是________。

  18. 定义自定义类型使用的关键字是_______。

  19. 若有以下定义: double w[10],则w数组元素下标的上限为______。

  20. 设int a=1,b=2;,则执行a=b+2,a++,a+b;后a和b的值分别是()

    • A.1和2
    • B.3和2
    • C.4和7
    • D.5和2
  21. 下列数组定义错误的是()

    • A.int a[2][3];
    • B.int c[2][3]=10};
    • C.int b[][3]={0,1,2,3};
    • D.int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
  22. 执行下列程序段后,x的值是() 

    int a=8,b=7,c=6,x=1 

    if(>6) 

    if(b>7) 

    if(c>8) x=2; 

    else x=3;

    • A.0
    • B.1
    • C.2
    • D.3
  23. 在一个文件的不同函数中不能重名的是()

    • A.函数名
    • B.形式参数
    • C.auto型内部变量
    • D.register型内部变量
  24. 下列程序段执行后,变量m的值是()

    Int w=1,x=2,y=3,z=4,m;

    m= (w

    m=(m

    m=(m

    • A.1
    • B.2
    • C.3
    • D.4
  25. 设有定义语句 char ch='\77';,则下列说法中正确的是()

    • A.ch中含有1个字符
    • B.ch中含有2个字符
    • C.ch中含有3个字符
    • D.语法出错
  26. 一个源文件中定义的全局变量的作用域为()

    • A.本文件的全部范围
    • B.本程序的全部范围
    • C.本函数的全部范围
    • D.从定义该变量开始至本文件结束
  27. 设int a=2,b=3,c=4;,则表达式a>b&&a<c‖b的值是()

    • A.-1
    • B.0
    • C.1
    • D.2
  28. 在C语言中,引用数组元素时,其数组下标的数据类型允许是()

    • A.整型常量
    • B.整型表达式
    • C.整型常量或整型表达式
    • D.任何类型的表达式
  29. 设int x=5,*p=&x;,表达式的值为5的是()

    • A.p
    • B.*p
    • C.&x
    • D.*x
  30. 下列函数头正确的是()

    • A.void fun(a,b)
    • B.void fun( int a, b)
    • C.void fun( int a, int b)
    • D.void fun( var int a, var int b)
  31. 设 char str[20];,从键盘能完整地输入字符串“I am a student.”的语句是()

    • A.str =gets();
    • B.gets(str);
    • C.scanf("%s", str);
    • D.scanf("%c", str);
  32. 设a=1,b=2,c=8,d=7,x=10,y=10,执行(x=a>b)&&(y=c>d)后y的值是()

    • A.1
    • B.2
    • C.10
    • D.4
  33. 设指针变量p1、p2指向同一个数组的元素,则下列表达式中错误的是()

    • A.p1=p2
    • B.p1==p2
    • C.p1-p2
    • D.p1+p2
  34. 执行表达式x=(y=1,z=2,k=3)后,x的值为()

    • A.6
    • B.3
    • C.2
    • D.1