2016-2018年中央财经大学C语言程序设计考研真题及答案解析

本站小编 免费考研网/2020-03-02

机密★启用前
中央财经大学2016年全日制硕士研究生 招生入学考试试卷
 
考试科目: C语言程序设计 
课程编号:  901
阅 卷 人:
考试日期:
姓    名:
考    号:
注  意  事  项
 
1.考 前 研 究 生 将 上 述 项 目 填 写 清 楚
2.字 迹 要 清 楚,保 持 卷 面 清 洁
3.交 卷 时 请 将 本 试 卷 和 题 签 一 起 上 交
 
 
中央财经大学研究生院
 
一、选择题(每题3分,共45分)
1、以下程序的输出结果是(             )。
 #include<stdio.h>
 void  main()
 {
  int a=12, b=12;
  printf("%d,%d\n",--a,++b);
 }
(A) 10,10  (B) 12,12  (C) 11,10  (D) 11,13
2、设有以下语句:int x=10;x+=3+x%(3),则x的值是(             )。
(A) 14   (B) 15   (C) 11   (D) 12
3、若d为double型变量,则表达式d=1,d+5,d++的值是(             )。
(A) 1   (B) 6.0   (C) 2.0   (D) 1.0
4、表达式5!=3的值是(             )。
(A) T   (B) 非零值  (C) 0   (D) 1
5、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值(             )。
(A) 0   (B) 1   (C) 12   (D) 6
6、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是(             )。
(A) 0   (B) 2   (C) 1.5   (D) 1
7、在C语言中,以下叙述不正确的是(             )。
(A) 在C程序中,无论是整数还是实数,都能被准确无误的表示
(B) 在C程序中,变量名代表存储器中的一个位置
(C) 静态变量的生存期与整个程序的生存期相同
(D) C语言中变量必须先定义后引用
8、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符(             )。
(A) 必须为字母 
(B) 必须为下划线
(C) 必须为字母或下划线   
(D) 可以是字母,数字或下划线中的任意一种
9、设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是(             )。
(A) float  (B) char  (C) int   (D) double
10、一个C语言的执行是从(             )。
(A) 本程序的主函数开始,到本程序的主函数结束
(B) 本程序的第一个函数开始,到本程序的最后一个函数结束
(C) 本程序的主函数开始,到本程序的最后一个函数结束
(D) 本程序的第一个函数开始,到本程序的主函数结束
11、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是(             )。
(A) 10<a<15    (B) a==11||a==12||a==13||a==14
(C) a>10&&a<15   (D) !(a<=10)&&!(a>=15)
12、下列程序执行后的输出结果是(             )。
  #include <stdio.h>
   void main( )
   {
   int a=5,b=60,c;
  if (a<b)
  {
   c=a*b;printf("%d*%d=%d\n",b,a,c);
  }
  else
  {
   c=b/a;printf("%d/%d=%d\n",b,a,c);
  }
 }
(A) 60/5=12  (B) 300  (C) 60*5=300   (D) 12
13、如果c为字符型变量,判断c是否为空格不能使用(             )。(假设已知空格ASCII码为32)
(A) if(c=='32')    (B) if(c==32)
(C) if(c=='\40')   (D) if(c=='  ')
14、运行下面程序时,若从键盘输入"3,5<CR>",则程序的输出结果是(             )。
 #include <stdio.h>     
 void main( )
 {
   int x,y;
  scanf("%d,%d",&x,&y);
   if (x==y)
   printf("x==y");
  else if (x>y)
   printf("x>y");
  else
   printf("x<y");
 }
(A) 3<5  (B) 5>3  (C) x>y  (D) x<y
15、运行下面程序时,若从键盘输入数据为"6,5,7<CR>",则输出结果是(             )。
 #include <stdio.h>
 void main( )
 {
   int a,b,c;
  scanf("%d,%d,%d",&a,&b,&c);
 if (a>b)
 if (a>c)
  printf("%d\n",a);
 else
  printf("%d\n",c);
 if (b>c)
  printf("%d\n",b);
 else
  printf("%d\n",c);
 }
(A) 5   (B) 6   (C) 7   (D) 不定值
 
 
二、填空题(每题3分,共30分)
1、下述程序段的运行结果是                           。
  int x,y;
  x=17;
  y=26;
  printf("%d",y/=(x%=6));
2、下列循环语句执行的循环次数是:                           。
  for(a=1,b=1;a<4&&b!=4;a++)//循环体内b的值不变。
3、下面程序用于统计一行字符串中单词的个数,单词之间用空格分隔。
 Main( )
 {  
  int i,num=0,word=0;
  char  str[80];
  scanf("%s",str);
  for(i=0;                           ;i++)
   if(sir[i]==")  
    word=0
   else if(word==0)
   {      
    word=1;
    num++;
   }
  printf("%d\n",num);
 }
4、下述程序段的输出结果是                           。
  int a=3;b=4;
  int c=a^b>>3;
  printf("%d",c);
5、下述程序段的输出结果是                           。
  #include<stdio.h>
  void  fun(int*x)
  {
   printf("%d",++x);
  }
  main(    )
  {   
    int y=20;
   fun  (&y);
  }
6、下述程序段的运行结果是                           。
  #include<stdio.h>
  main( )
  {    
   int a[3][3]={1,2,3,4,5,6,7,8,9};
   int s=0,i;
   for(i=0;i<3;i++)
    s+=(*(a+i))[i];
   printf("%d",s);
  }
7、求20以内3的倍数和sum1及其余数的和sum2。
 main(  )
 {   
   int  sum=0,sum2=0,i;
  for(i=1;i<=20;i++)
  if(                           )
   sum1+=i;
  else
   sum2+=i;
  printf("%d,%d\n",sum1,sum2);
 }
8、下面函数把两字符串s1和s2连接起来。
 Con(char  s1[ ], char  s2[ ])
 {   
   int  i=0,j=0;
  while(s1[i]!='\0')i++;
  while(                           )
   s1[i++]=s2[j++];
  s1[i]='\0';
 }
9、统计文件f1.dat中的字符个数。
 #include  <stdio.h>
 main( )
 {   
   FILE *fp;
  long  num=0;
  if(                                      ==NULL)
  {  
   printf("Can’t Open File\n");


相关话题/中央财经大学 语言 程序 设计