c语言笔试真题

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

  二、填空题(每空2分,共30分)

  (1)某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有【1】 个结点。

  (2)程序流程图中的菱形框表示的是 【2】 。

  (3)软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中 【3】 阶段产生“软件需求规格说明书。

  (4)在数据库技术中,实体集之间的联系可以是一对一或一对多或多对多的,那么“学生”和“可选课程”的联系为 【4】 。

  (5)人员基本信息一般包括:身份证号,姓名,性别,年龄等。其中可以作为主关键字的是 【5】 。

  (6)若有定义语句:int a=5;,则表达式:a++的值是 【6】 。

  (7)若有语句double x=17;int y;,当执行y=(int)(x/5)%2;之后y的值为 【7】 。

  (8)以下程序运行后的输出结果是 【8】 。

  #include

  main()

  { int x=20;

  printf(“%d”,0

  printf(“%d ”,0

  (9)以下程序运行后的输出结果是 【9】 。

  #include

  main()

  { int a=1,b=7;

  do {

  b=b/2;a+=b;

  } while (b>1);

  printf(“%d ”,a);}

  (10)有以下程序

  #include

  main()

  { int f,f1,f2,i;

  f1=0;f2=1;

  printf(“%d %d”,f1,f2);

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

  { f=f1+f2; printf(“%d”,f);

  f1=f2; f2=f;

  }

  printf(“ ”);

  }

  程序运行后的输出结果是 【10】 。

  (11)有以下程序

  #include

  int a=5;

  void fun(int b)

  { int a=10;

  a+=b;printf(“%d”,a);

  }

  main()

  { int c=20;

  fun(c);a+=c;printf(“%d ”,a);

  }

  程序运行后的输出结果是 【11】 。

  (12)设有定义:

  struct person

  { int ID;char name[12];}p;

  请将scanf(“%d”, 【12】 );语句补充完整,使其能够为结构体变量p的成员ID正确读入数据。

  (13)有以下程序

  #include

  main()

  { char a[20]=”How are you?”,b[20];

  scanf(“%s”,b);printf(“%s %s ”,a,b);

  }

  程序运行时从键盘输入:How are you?<回车>

  则输出结果为 【13】 。

  (14)有以下程序

  #include

  typedef struct

  { int num;double s}REC;

  void fun1( REC x ){x.num=23;x.s=88.5;}

  main()

  { REC a={16,90.0 };

  fun1(a);

  printf(“%d ”,a.num);

  }

  程序运行后的输出结果是 【14】 。

  (15)有以下程序

  #include

  fun(int x)

  { if(x/2>0) run(x/2);

  printf(“%d ”,x);

  }

  main()

  { fun(6);printf(“ ”); }

  程序运行后的输出结果是 【15】 。