《程序设计基础(C)》机考期末试卷(八)及答案
所属语言:C语言
试卷方案:2017级C期末考试
试卷总分:100分
共有题型:5种
一、判断  共10题 (共计15分)
第1题 (1.5分)        题号:1103        难度:中        第1章
除运算时,若运算量为整型时,其运算结果也是整型.
答案:Y
第2题 (1.5分)        题号:17        难度:中        第1章
x*=y+8 等价于 x=x*(y+8)。
答案:Y
第3题 (1.5分)        题号:4        难度:中        第1章
在C语言中,下面的定义和语句是合法的:
file *fp;fp=fopen("a.txt","r");
答案:N
第4题 (1.5分)        题号:1669        难度:易        第9章
结构体的成员必须是不同数据类型的变量.
答案:N
第5题 (1.5分)        题号:1619        难度:中        第5章
已知C语言说明语句"int a[10];",若在程序当中引用该数组最后一个元素的值+5,则语句写成a[10]+5.
答案:N
第6题 (1.5分)        题号:1602        难度:易        第4章
for循环是先执行循环循环体语句,后判断表达式.
答案:N
第7题 (1.5分)        题号:1639        难度:中        第6章
在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效.
答案:Y
第8题 (1.5分)        题号:37        难度:中        第1章
C程序中有调用关系的所有函数必须放在同一个源程序文件中。
答案:N
第9题 (1.5分)        题号:1622        难度:易        第6章
在C语言程序中,要调用的函数必须在main()函数中定义.
答案:N
第10题 (1.5分)        题号:1685        难度:中        第10章
文件指针是指向内存某个单元的地址值.
答案:Y
二、单选  共10题 (共计20分)
第1题 (2.0分)        题号:122        难度:中        第1章
以下不符合C语言语法的赋值语句是()。
A:j++;
B:j=j=5;
C:k=2*4,k*4;
D:y=float(j);
答案:D
第2题 (2.0分)        题号:4992        难度:难        第1章
向屏幕输出字符串"hello"时,使用以下哪条语句().
A:printf("%c","hello");
B:putchar("hello");
C:fprintf("%s","hello");
D:puts("hello");
答案:D
第3题 (2.0分)        题号:5048        难度:较易        第1章
以下正确的字符串常量是
A:"\\\\"
B:'abc'
C:OlympicGames
D:'A'
答案:A
第4题 (2.0分)        题号:703        难度:中        第1章
变量的指针,其含义是指该变量的()。
A:值
B:地址
C:名
D:一个标志
答案:B
第5题 (2.0分)        题号:691        难度:中        第1章
以下叙述中正确的是()。
A:在程序的一行上可以出现多个有效的预处理命令行
B:使用带参的宏时,参数的类型应与宏定义时的一致
C:宏替换不占用运行时间
D:在以下定义中 C R 是称为"宏名"的标识符    #define C R  045
答案:C
第6题 (2.0分)        题号:3123        难度:中        第4章
以下程序段,则该循环是一个(  ).                     
x=-1;
do{x=x*x;}
while(!x);
A:是死循环
B:循环执行二次
C:循环执行一次
D:有语法错误
答案:C
第7题 (2.0分)        题号:500        难度:中        第1章
下列程序段的输出结果为()。
int x=3,y=2;
printf("%d",(x-=y,x*=y+8/5));
A:1
B:7
C:3
D:5
答案:C
第8题 (2.0分)        题号:192        难度:中        第1章
下面选择中正确的赋值语句是(设char a[5],*p=a;)()。
A:p="abcd";
B:a="abcd";
C:*p="abcd";
D:*a="abcd";
答案:A
第9题 (2.0分)        题号:634        难度:中        第1章
若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是()。
A:2
B:3
C:4
D:无确定值
答案:B
第10题 (2.0分)        题号:3159        难度:中        第8章
若有语句int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则()不是对a数组元素的正确引用(其中0≤i<10).
A:p[i]
B:*(*(a+i))
C:a[p-a]
D:*(&a[i])
答案:B
三、程序填空  共2题 (共计14分)
第1题 (7.0分)        题号:31        难度:难        第1章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:用冒泡法对数组a 进行由小到大的排序。
-------------------------------------------------------*/
#include <stdio.h>
void fun(int a[],int n)
{
  int i,j,t;
  /***********SPACE***********/
  for (j=0; 【?】;j++)
    /***********SPACE***********/
    for (i=0; 【?】;i++)
      /***********SPACE***********/
      if(【?】)
      {
        t=a[i];
        a[i]=a[i+1];
        a[i+1]=t;
      }
}
int main()
{
  int i,a[10]={3,7,5,1,2,8,6,4,10,9};
  /***********SPACE***********/
  【?】;
  for(i=0;i<10;i++)
    printf("%3d",a[i]);
  return 0;字符串长度17模式串长度8
}
答案:
=======(答案1)=======
j<=n-1
=========或=========
n-1>=j
=========或=========
j<=-1+n
=========或=========
-1+n>=j
=========或=========
j<n
=========或=========
n>j
=========或=========
j<n-1
=======(答案2)=======
i<n-j-1
=========或=========
n-j-1>i
=========或=========
i<n-1-j
=========或=========
n-1-j>i
=========或=========
i<=n-j-2
=========或=========
i<=n-2-j
=========或=========
i<n-1或n-1>i
=======(答案3)=======
a[i]>a[ i + 1 ]

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。