空军工程大学系统工程专业基础综合A卷2011考研试题研究生入学考试试题考研真题

查字典文档网

      空军工程大学2011年硕士研究生入学试题

      考试科目:系统工程专业基础综合(A卷) 科目代码804 说明:答题时必须答在配发的空白答题纸上,答题可不抄题,但必须写清题号,写在试题上不给分; 考生不得在试题及试卷上做任何其它标记,否则试卷作废,试题必须同试卷一起交回。 试题共分两部分

      第一部分 C程序设计部分(75分)

      一、单项选择题(每小题1分,共5分)在每小题列出的四个选项中,只有一个选项符合题目要求,请将其代码填在题后的括号内。

      1、下列描述正确的是( )。

      A.由main函数及其参数argc可以实现命令行方式。

      B.使用fclose关闭文件时,先释放文件指针,再写缓冲区数据到文件中。

      C.字符数组并不要求它的最后一个字符是‘\0’。

      D.以上说法均正确。

      2、假设i的初值为3,赋值语句j=-i++;执行后,j,i的值分别是( )。

      A.-3,4 B.-3,-4 C.3,-4 D.3,4

      3、下面的保留字( )不能作为函数的返回类型。

      A.void B.int C.new D.long

      4、在C语言程序中,下面描述正确的是( )。

      A.函数的定义可以嵌套,但函数的调用不可以嵌套。

      B.函数的定义不可以嵌套,但函数的调用可以嵌套。 C.函数的定义和函数的调用都可以嵌套。

      D.函数的定义和函数的调用都不可以嵌套。

      5、对函数使用方法错误的描述是( )。

      A.用数组做函数参数时,必须在主调函数和被调函数中分别定义数组。

      B.实参数组元素和形参数组元素类型可以不一致。

      C.形参数组长度可以不指定。

      D.形参数组长度可以大于实参数组长度。

      二、填空题(每空1分,共10分)将正确答案写在每题的括号内。

      1、在C语言程序设计中,语句float *p[8];的作用是( ① )。

      2、语句static int b[][3]={{1},{0,2},{3,2,1}};的作用是( ②上述定义后各元素的值是( ③ )。

      3、带参数的main函数的完整形式是( ④ )。

      4、C语言中的每条基本语句均以( ⑤ )作为结束符。

      5、下面程序的运行结果是( ⑥ )。

      #include <stdio.h>

      void main()

      { unsigned char a,b;

      scanf(“%o,%o”,&a,&b);

      printf(“a & b=%o\n”,a&b);

      }

      程序运行时,从键盘输入的值是:234,356

      6、下面程序的运行结果是( ⑦ )。

      #include <stdio.h>

      void main() ),按

      { int *p1,*p2,a,b;

      scanf(“%d,%d”,&a,&b);

      p1=&a; p2=&b;

      printf(“%d,%d\n”,*p1,*p2);

      p2=p1;

      printf(“%d,%d”,*p1,*p2);

      }

      程序运行时,从键盘输入的值是:50,80。

      7、对文件进行分类时,如果按文件中数据的组织形式区分,数据文件可分为字符代码文件和二进制文件,字符代码文件是指( ⑧ ),二进制文件是指( ⑨ )。

      8、设a=3,b=4,c=5,表达式:!(x=a) && (y=b) && 0的值是( ⑩ )。

      三、分析简答题(共30分)

      1、(5分)写出下列程序段的输出结果。

      #include <stdio.h>

      void fun()

      { static int a=5;

      printf(“a=%d\n”,a);

      }

      void main()

      { for(int i=0;i<2;i++)

      fun();

      }

      2、(6分)简述下面三条语句的区别。

      语句1:char * const p;

      语句2:char const * p;

      语句3:const char * p;

      3、(5分)写出下列程序的输出结果。

      #include <stdio.h>

      void main()

      { int a,b,c,d;

      a=10;

      b=a++;

      c=++a;

      d=10*a++;

      printf(“b,c,d:%d,%d,%d”,b,c,d);

      }

      4、(6分)局部变量能不能和全局变量重名?如何引用一个已经定义的全局变量?全局变量可以定义在多个.c文件包含的头文件中吗?请简要说明理由。

      5、(8分)以下程序是将一个字符串倒序排列,如将“abcd”倒序后变为“dcba”。请找出以下代码中的所有错误,并改正。

      #include “string.h”

      #include <stdio.h>

      void main()

      { char* src=“hello,world”;

      char* dest=NULL;

      int Len=strlen(src);

      dest=(char*)malloc(Len);

      char* d=dest;

      char* s=src[Len];

      while(Len--!=0)

      d++=s--;

      printf(“%s”,dest);

      }

      四、程序设计题(共30分)

      1、(15分)我们称用1和0组成的串为“零幺串”,称只用“1”组成的串为“幺串”,只用“0”组成的串为“零串”。试写一个函数,使得它对任给零幺串,将返回值N1和值N0,其中N1表示串S中最长幺串的长度,N0表示串S中最长零串的长度。例如,假设S是下面表示的零幺串,则在N1中返回5,在N0中返回4。

      S=0001011100111000011111

      2、(15分)已知,结构体类型f_struct的长度为80个字节,要求把从某外设读入的该结构体类型的所有数据存储在二进制文件a.dat中,如果该文件存在,把数据追加到文件末尾。如果该文件不存在,先创建,然后向写文件中写入数据。