运城学院 计算机与信息技术学院

发布时间 2023-12-29 10:14:47作者: 王闯wangchuang2017

运城学院数学与信息技术学院

2017—2018学年第二学期期末考试

程序设计基础 试题(A)

适用范围:计算机科学与技术专业1701\1702班

网络工程专业1703\1704\1705班

信息管理与信息系统专业1706班

数字媒体技术专业1707\1708班

通信工程专业1709\17010班

 命题人: 南丽丽

                                                 审核人: 

 

一、选择题(每题2分,共20分)

1、在下列自定义标识符中,符合C语言规定的是_______

A、6_3         B、piece flag         C、sum         D、number-of

2、下面各选项组中,均是C语言关键字的组是_______。

   A、autoenuminclude        B、switchtypedefcontinue    

C、signedunionscanf        D、ifstructtype

3、一个C程序的执行是从_______

A、程序的main函数开始,到main函数结束

B、程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C、本程序的main函数开始,到本程序文件的最后一个函数结束

D、本程序文件的第一个函数开始,到本程序main函数结束

4、C语言规定:在一个源程序中,main函数的位置_______

A、必须在最开始                       B、可以任意

C、必须在系统调用的库函数的后面       D、必须在最后

5、printf函数中用到格式符%5d,其中数字5表示输出的数字占用5列。如果数字长度大于5,则输出按方式_______

A、从左起输出该字符串,右补空格  B、右对齐输出该字串,左补空格

C、按原字符长从左向右全部输出    D、输出出错信息

6、阅读以下程序,当输入数据的形式为25,13,10<CR>(CR为回车)时正确的输出结果为_______

   main( )

{  int x,y,z;

scanf("%d%d%d",&x,&y,&z);

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

}

A、x+y+z=48      Bx+y+z=35      Cx +z=35     D、不确定值

7、设x,yz均为int型变量,则执行语句x=(y=(z=10)+5)-5;后x,yz的值是_______    

Ax=10 y=15 z=10            Bx=10 y=10 z=15

Cx=10 y=10 z=10            Dx=10 y=5 z=10

8、设有int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)||(n=c>d)m的值为_______

A1          B2          C3         D0

9、判断char型变量ch是否为大写字母的正确表达式的是_______

A、’A<=ch<=Z’                 B、(ch>=A&(ch<=Z)

C、(ch>=A&&(ch<=Z)        D(A<=ch)AND(Z>=ch)

10、若有说明语句:char c=\n;则变量c_______

A、包含1个字符             B、包含2个字符

C、包含3个字符             D、说明不合法,c的值不确定

二、填空题(每空1分,共20分)

1、C语言中规定:变量应该先_______,再使用。

2、从编写好一个C程序到完成运行,一般经过_______、_______、_______、_______四个步骤。

3C语言中的标识符是由_______、_______和_______组成的字符序列。

4C语言的函数主要由_______和_______两部分组成。

5、从变量的作用域来分,变量可分为_______和_______。

6、若有:printf(“%d”,((a=3*5,a*4),a+30));输出的值为:_______。

7、若有:int a[2][3]={1,2,3,4};则a[1][2]的值为_______。

8、printf(“%f\n”, (2.5+3.0)/5);的输出结果是_______。

9、有数据定义语句:

char string1[10]="ABCDE",string2[10]="XYZ";

printf("%d\n",strlen(strcpy(string1,string2)));

上面的输出结果是_______。

10、已知int x=6,y;在VC++环境下执行下述语句:

y=++x>5&&++x<10;

x的值是_______y的值是_______ 。

11C语言中对文件的操作必须按文件的打开、__________ 三步进行。

三、程序分析题(每题5分,共20分)

1、分析以下程序的运行结果:

int main( )

{  int  m=5;

if(--m>5)    printf("输出的值为:%d\n",m);

else    printf("输出的值:%d\n",m--);

}

运行结果是:                              

2、分析以下程序的运行结果:

#define sq(x)  x*x

int main( )

{   int a=4;

printf("表达式结果为:%d\n",10/sq(a+1));

}

运行结果是:                              

3、分析以下程序的运行结果:

void ive(int x[ ],int n)

{ int t,*p;

  p=x+n-1;

  while(x<p)

  { t=*x;

   *x++=*p;

   *p--=t;

  }

  return;

}

main( )

{ int i,a[ ]={1,2,3,4,5,6,7,8,9,0};

 ive(a,10);

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

    printf(%d,a[i]);

 printf(\n);  }

运行结果是:                              

4分析以下程序的运行结果:

long fun(int n)

{  long s;

   if(n= =1||n= =2)     s=2;

   else     s=n-fun(n-1);

   return s;   }

 main( )

 {  printf(s=%ld\n,fun(3));  }

运行结果是:                              

四、编程题(每题10分,共40分)

1、编程:输出1100之间所有整数的奇数和与偶数和。

2、编程:n!,并将结果输出。

3编程:用冒泡法对n个数从大到小排序。

4、编程:有5个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,编程实现从键盘上输入5个学生的信息,并在显示器上输出学生的相关信息。