期中试卷
考试科目:C语言程序设计 试题编号:A
适用对象:网络121-2 使用学期:2012--2013--1 第一学期
课程编号: 共4道大题 总分100分 共4页
考生须知:
1) 姓名必须写在装订线左侧,其它位置一律作废。
2) 请先检查是否缺页,如缺页应向监考教师声明,否则后果由考生负责。
3) 答案一律写在答题纸上,可不抄题,但要标清题号。
4) 用蓝或黑的钢笔、圆珠笔答题。
监考须知:请将1份试卷放在答题纸上面一起装订。
一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,每小题2分,共20小题40分)
1.假设x=2.5,a=7,y=4.7,则表达式:x+a%3*(int)(x+y)%2/4的值为( )。
A 2.5 B 2.75 C 3 D 9.5
2.表达式k=(12<10)?4:1?2:3的值为( )。
A 1 B 2 C 3 D 4
3.假设整型变量a为2,使b的值为0的表达式是( )。
A b=a/2 B b=6-(--A C b=a%2 D b=a>3?0:1
4.设有整型变量a,实型变量f,双精度型变量x,则表达式10+‘b’+x*f值的类型为( )。
A int B float C double D 不能确定
5.假设a=3,b=4,c=5,则逻辑表达式: !(a+b)+c-1&&b+c/2的值是( )。
A true B false C 0 D 1
6.为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系。
A 缩进位置相同的if B 在其之前未配对的if
C 在其之前最近的未配对的if D 同一行上的if
7.在以下一组运算符中,优先级最高的运算符是( )。
A <= B = C % D &&
8.C语言中,运算对象必须是整型数的运算符是( )。
A % B / C %和/ D *
9.sizeof (double)是一个( )。
A 整型表达式 B 实型表达式 C 不合法的表达式 D 函数
10.以下关于运算符优先顺序的描述中,正确的是( )。
A关系运算符<算术运算符<赋值运算符 B 逻辑运算符<关系运算符<算术运算符
C 算术运算符<关系运算符<赋值运算符 D 赋值运算符<关系运算符<算术运算符
11.下面对变量赋初值正确的是( )
A int a=b=c=1; B int a=1,b=c=2;
C int a=1,b=1,c=1; D int a=b=1,c=2;
12printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式 ( )。
A 从左起输出该字符串,右补空格 B 按原字符长从左向右全部输出
C 右对齐输出该字串,左补空格 D 输出错0信息
13.设有如下的变量定义:
int i=8,k,a,b;
unsigned long w=5;
double x=1,42,y=5.2;
则以下符合C语言语法的表达式是( )。
Aa=a-=(b=4)*(a=3) Bx%(--3)
Ca=a*3=2 Dy=float(i)
14.若有定义int x,y;下面选项中合法的if语句( ).
A if(a==b) x++; B if(a=<b) x++;
C if(a<>b) x++; D if(a=>b) x++;
15.运行下列程序并用键盘输入53,48,32 后,在屏幕上的内容是( )。
main ()
{
int i,j,k;
scanf ("%d,%d,%d",&i, &j, &k);
if (i>50) printf("%d",i);
else if (i>40) printf("%d",j);
else if (i>30) printf("%d",k);
else printf("Error");
}
A 53 B 48 C 32 D Error
16. 在C语言的if语句中,用作判断的表达式为( )。
A 关系表达式 B 逻辑表达式 C 算术表达式 D任意表达式
17. 下面程序的运行结果是( )。
main( )
{int k=3;
if (k++>3) printf("%d\n",k++);
else printf("%d\n",--k); }
A5 B 4 C3 D2
18. 在宏定义#define PI 3.1415926中 ,用宏名PI代替一个( )。
A单精度数 B双精度数 C常量 D字符串
19.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( )。
A 必须为字母 B 必须为下划线
C 必须为字母或下划线 D 可以是字母、数字和下划线中任一种字符
20. 一个C语言程序是由( )组成。
A 一个函数 B 一个或若干个函数
C 一个过程 (D 一个过程或若干个过程
二、填空题(每空1分,每小题1分,共10小题20分)
1.转换说明符%x的输出形式是( )。每空1分
2.将int 型变量n转换成float型变量的方法是 ( )。每空1分 3.以下变量x、y、z均为double类型且已正确赋值,请写出x÷(y×z)的c语言表达式是( )。每空1分
4.C语言中用于结构化程序设计的三种基本结构是( )、( )、( )。每空1分
5. C程序中注释部分可以出现在程序中任意合适的地方,单行注释用( ),多行注释用( )。每空1分
6.最常用的输入库函数为scanf,输出库函数为printf ,这两个函数库在头文件( )中。每空1分
7. log10(double x)和ldexp(double x, int n) ,这两个函数库在头文件( )中。每空1分
8. C语言中的数据类型有( )、( )、( )。每空1分
9. 变量获得值的方法:( )、( )、( )。每空1分
10.请写出printf和scanf函数的原型( )、( )。每空2分
三、写出下列程序的执行结果(每小题5分,共4小题20分)
1.main() { int x,y,z; x=y=2;z=3; y=z++-1; printf(“%d\t%d\t”,x,y); y=++x-1; printf(“%d \t%d\n”,x,y); y=z---1; printf(“%d\t%d\t”,z,y); y=--z-1; printf(“%d\t%d\n”,z,y); } 运行后输出的数据为_______。
2.printf函数中用到格式符 5smain() {int i=1,sum=0; while(i<=10) {
sum=sum+1; i++;
} printf("i=%d,sum=%d",i,sum); }
3.写出下列表达式
1)表示数学公式a>b>c
2)判断a, b, c三条线段能否组成一个三角形
3)a, b不同时为负
4.请用语言描述求两数的最大公约数的算法。
四、程序设计题(每小题10分,共2小题20分)
1.现有两个整数x和y,请将它们的值交换。
2.求求绝对值。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int x, y;
printf("input the value of x:");
scanf("%d", &x);
y = x;
if (x < 0)
y = -x;
printf("|x|=%d\n", y);
system("pause");
return 0;}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论