一起答

高级语言程序设计(一)2014年10月真题及答案解析

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 从键盘输入一串字符,以回车换行符为结束标志,分别统计并输出英文字符和数字字符的个数。

  2. 将从键盘输入的字符串写入文本文件out.txt,输入的字符串长度小于80。

    #include

    #include

    void main()

    {

       char c[80];

       _________;   /*第一空*/

       if((p=fopen("out.txt","w"))=NULL)

       { printf("Can not open file!\n"); exit(0); }

       gets(_________);   /*第二空*/

       fputs(c, p);

       fclose(_________);   /*第三空*/

    }

  3. 从键盘向一维数组输入50个实数,计算并输出其最大值和平均值。

  4. 下列程序中,主函数main调用函数 LineMax,求二维数组中每一行元素的最大值并输出。

  5. void main()

    {

        int a, b, k=4, m=6, *p1=&k, *p2=&m;

        a=(p1==p2);

        b=(*p1)/(*p2)+7;

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

    }

  6. int f(int a)

    {

       int b=0;

       static int c= 3;

       b++; c++;

       return(a+b+c);

    }

    void main()

    {

       int a=2, i;

       for(i=0; i<3; i++) printf("%d/", f(a));

    }

  7. void f(int n)

    {

       if(n==0) return;

       else { printf("%d", n%2); f(n-1); }

    }

    void main()

    { f(3); }

  8. void main()

    {

       int x=5;

       if(x--<5)  printf("%d\n", x);

        else printf("%d\n", x++);

    }

  9. 执行 switch语句后输出结果是_________。

    switch('B'-'A')

    case 0: printf("A");

    case 1: printf("B");

    case 2: printf("C"); break;

    default: printf("D");

  10. 下列程序段中的变量f是局部_________变量。

    int c(int n)

    {

       static int f=1;

       f=f*n;

       return f;

    }

  11. 下列程序段执行后,变量k的值是_________。

    int k=2;

    while (k!=0) k--;

  12. 设 char s[]="9876", *p;,执行语句for(p=s; p

  13. 设#define X 5+9

    则执行语句printf("%d", 3*X);后输出结果是_________。

  14. 设 float x=9, y=2;,表达式(int) (sqrt(x)/y)的值是_________。

  15. struct S

    {

       int a, b;

       char c;

       double d;

    };

    则定义该结构型变量t的正确语句是_________。

  16. 运算符+、=、&&和!中,优先级最高的是_________。

  17. 循环体至少被执行一次的循环语句是_________。

  18. 设 int f( int x, int y) { returrn(x*y);},则调用函数f时,实参与形参之间的传递方式是_________。

  19. 系统函数 rewind的作用是(  )

    • A.将文件内部指针指向文件末尾
    • B.将文件内部指针指向文件开头
    • C.将文件内部指针下移一个字符位置
    • D.将文件内部指针随机指向文件任意位置
  20. 下列语句错误的是(  )

    • A.int a[]={1, 2};
    • B.char *a[3];
    • C.int n=5, a[n];
    • D.char s[10]={"test"};
  21. 设 char s[]=" BeijingChina";,执行语句 printf("%d,%d\n", strlen(s), sizeof(s));后输出结果是(  )

    • A.12,12
    • B.12,13
    • C.13,12
    • D.13,13
  22. 设 int i, j=2, *p=&i;,能将j的值赋给i的正确语句是(  )

    • A.i=*p;
    • B.*p=j;
    • C.i=&j;
    • D.*i=*p;
  23. 设int x=3;,执行语句x<<=2; 后x的值是(  )

    • A.0
    • B.1
    • C.6
    • D.12
  24. 下列函数返回值的类型是(  )

    int fun( float x)

    {

       float y;

       y=3*x-4;

       retum y;

    }

    • A.int
    • B.void
    • C.float
    • D.double
  25. 下列数组定义错误的是(  )

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

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

    m=(w

    • A.1
    • B.2
    • C.3
    • D.4
  27. 下列程序段中,循环体被执行的次数是(  )

    int t=81, v=9;

    while( t%v==0) printf("%c\n", '*');

    • A.0
    • B.1
    • C.9
    • D.无限
  28. 设 int x, y;,下列语句正确的是(  )

    • A.5=x;
    • B.x=y--;
    • C.(x+y)++;
    • D.x+y=100;
  29. 设int x=0, y=9, a;,下列语句错误的是(  )

    • A.if(y) x+=y;
    • B.if(x>y) x-=y;
    • C.if(x
    • D.if(x!=y) a=0 else a=1;
  30. 正确的字符型常量是(  )

    • A.'\001'
    • B.'68'
    • C."B"
    • D.GO
  31. 设int x=10, y=3;,执行语句printf("%d,%d\n", x--, --y);后输出结果是(  )

    • A.9,2
    • B.9,3
    • C.10,2
    • D.10,3
  32. 设int a=3;,执行语句printf("%d\n", a+(a-=a*a));后输出结果是(  )

    • A.-12
    • B.-6
    • C.0
    • D.12
  33. 设 int x, y, z;,从键盘输入x、y和z的值,正确的语句是(  )

    • A.get(x, y, z);
    • B.scanf(" %d%d%d", x, y, z);
    • C.scanf("%d%d%d", &x, &y, &z);
    • D.read("%d%d%d", &x, &y, &z);