一起答

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

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 编写程序输入30个学生的学号、姓名、3门课程的成绩,存入一个结构体类型的数组。统计每个学生的总分并输出学生的学号、姓名、总分。

  2. 用当型循环结构实现并输出1+2+3+…+50的和。

  3. 利用宏定义和函数求最大值。

    #include <stdio. h>

    #define_______((a)>=(b)?(a):(b))/*有参宏定义*/

    int main( void)

    {

    int j,k;

    printf("Please input two integers: \n");

    scanf( "%d%d",&j,&k);

    printf("The max is %d\n",_______);

    retum 0;

    }

  4. 以下程序不借助任何变量,把x、y中的值进行交换。

    #include< stdio.h>

    void main()

    {

    int x,y;

    printf("Input x,y: ");

    scanf("% d%d",______ );

    x+=y;

    y=x-________ ;

    x-=_______;

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

    }

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

    #include <stdio.h>

    #define N3

    #define M4

    void LineMax( int x[N] [M])

    {

    int i,j, max;

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

    {

    max=x[i][0];

    for(j=1;j<M;j++)if(max<x[i][j])_______;

    printf("The max value in line %d is %d\n",i_______);

     }

    }

    void main()

    {

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

    _______;

    }

  6. #include< stdio.h>

    void main()

    {

    int a[]={1,2,3,4,5,6};

    int *p;

    p=a;

    *(p+3)+=1;

    printf(" %d, %d \n",*p, *(p+3));

    }

  7. #include<stdio.h>

    main()

    {

    int i=1,s=3;

    do

    {

    s+=i++

    if(s%==0) continue;

    else++i;

    }

    while(s<15);

    printf("%d",i);

    return 0;

    }

  8. #include< stdio.h> 

    #define PR printf("x=%d,y=%d\n",x,y) 

    int x=2,y=8; /*全局变量*/ 

    void fun() 

    x++;PR; 

    void main() 

    int x=8; 

    fun(); 

    PR; 

    }

  9. C程序的执行从_______开始。

  10. #include <stdio. h>

    void main()

    {

    int i,a[5];

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

    a[i]=9*(i-2+4*(i>2))%5;

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

    printf("%3d",a[i]);

    }

  11. 设 

    struct S 

    { int a,b; 

    char c; 

    double d; 

    }; 

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

  12. 若只对实型二维数组每行的前若干元素赋初值,则所有未赋初值的数组元素的值为_______。

  13. 一个字符型变量所占内存的字节数是________。

  14. C语言中,整型常量的书写形式包括八进制、十进制和_______进制。

  15. 解决问题的步骤序列就是_______。

  16. 常量可以有不同的类型,C语言规定常量包括_______实型常量、字符型常量、字符串常量和符号常量。

  17. 若已知a=6,b=8,则表达式!a<b的值为_______。

  18. C语言中,唯一的一个三目运算符是_______。

  19. 设有下列数据定义语句,则表达式 sizeof(ab)的值是() 

     struct{ char a; short b; float c;}abc;

    • A.3
    • B.7
    • C.8
    • D.6
  20. 指针运算中,取地址运算符“&”的运算对象必须是_______。

  21. 设有定义语句“int x=6,*p=&x;”,则值不为6的表达式是()

    • A.x
    • B.*p
    • C.p+0
    • D.*&x
  22. sizeof( double)是()

    • A.函数调用
    • B.int型表达式
    • C.double型表达式
    • D.非法表达式
  23. 循环体至少被执行一次的是()

    • A.for语句
    • B.while语句
    • C.do- while语句
    • D.continue语句
  24. C语言中,组成文件的是()

    • A.字符(字节)序列
    • B.数据块
    • C.数据行
    • D.记录
  25. 使用系统函数abs()时,应在程序开头写上的编译预处理命令是()

    • A.#include< math.h>
    • B.#include< string.h>
    • C.#include< stdio.h>
    • D.#include< stdlib.h>
  26. 设 struct num 

    int a;

    int b; 

    d[3]={{1,4},{2,5},{6,7}}; 

    则执行语句 printf("%d\n",d[2].a*d[2].b/d[1].b);后的输出结果是()

    • A.2
    • B.5
    • C.8
    • D.4
  27. 打开文件时,若文件使用方式选用字符串"w",则表示()

    • A.打开一个已存在的二进制文件,只能读取数据
    • B.打开一个文本文件,只能写入数据
    • C.打开一个已存在的文本文件,只能读取数据
    • D.打开一个二进制文件,只能写入数据
  28. 以下说法中不正确的是()

    • A.使用 while循环时,循环变量初始化的操作应在循环语句之前完成
    • B.while循环是先判断表达式后执行循环体语句
    • C.do -while-和for循环均是先执行循环体语句,后判断表达式
    • D.for、while和do- while循环中的循环体均可以由空语句构成
  29. 设intx,y;,下列语句正确的是()

    • A.5=x;
    • B.x=y- -;
    • C.(x+y)++;
    • D.x+y=100;
  30. 宏定义#define PI 3.14159中,用宏名PI代替的是一个()

    • A.常量
    • B.字符串
    • C.单精度实数
    • D.双精度实数
  31. C语言中,函数返回值的类型由()

    • A.return语句中表达式的类型决定
    • B.定义的函数类型决定
    • C.调用该函数的主函数类型决定
    • D.调用该函数时的系统状态确定
  32. 以下选项中,合法的用户标识符是()

    • A.long
    • B._2Tes
    • C.3Dmax
    • D.a.dat
  33. 正确的变量定义是()

    • A.unsigned long d= 1000;
    • B.float m1=m2=10.0;
    • C.char cl ='A', c2=A;
    • D.double x=1.76,x=92.84;
  34. 下列程序段中,循环体被执行的次数是() 

    int t=81,v=9 

    while(t%v==0) 

    printf("%c\n",'*');

    • A.0
    • B.1
    • C.9
    • D.无限