C语言程序设计模拟试题2
一、单选题(每题3分,共计30分)
1、C语言中基本数据类型包括(B)。
A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、实型 2、下列选项中不属于C语言的优点的选项是( )。
A、C语言语句简洁、紧凑,使用方便灵活 B、C语言程序易于移植
C、生成的目标代码质量高,运行效率高 D、数据类型检查严格 3、若a、b均为int型变量,且a=100,则关于循环语句for(b=100; a!=b; ++a,++b)
printf ( “ ------------”) ;的正确说法是( ) 。 A、循环体只执行一次 B、死循环 C、循环体一次也不执行 D、输出----------- 4、对C语言来说,下列标识符中不合法的选项是( )。
A、AB2C B、ab2c C、ab.2c D、a_b2c 5、执行下列程序段后,i的值是( )。
s = 0;
for( i = 1; i <= 4; i=i+3 ){
s += i; }
A、1 B、4 C、5 D、7 6、下列各语句中,能够输出整型变量a、b中最大值的是( )。
A、printf(\
B、(a>b)? printf(\C、printf(\ else b); D、printf(\
7、设int a = 9,b = 8,c = 7, x = 1; 则执行语句 if (a>7) if (b>8) if (c>9) x=2 ;else x = 3;
后, x 的值是( )。
A、0 B、2 C、1 D、3 8、下列语句中定义x为指向int类型变量a的指针,正确的是( )。
A、int a, *x=a; B、int a, *x=&a; C、int *x=&a, a; D、int a, x=a; 9、以下正确的函数定义形式是( )。
A、double fun(int x, int y) B、double fun(int x; int y) C、double fun(int x, int y); D、double fun(int x y)
第1页 共6页
10、假定int类型变量占用两个字节,有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是( )
A) 3 B) 6 C) 10 D) 20
printf(“s=%d\\n”,s);
三、程序分析题(3小题,每题10分,共计30分)
1、分析下列程序,写出输出结果。 #include
二、填空题(每题2分,共计10分)
1、C语言程序设计的三种基本结构是 、分支结构和 。
2、若已定义: int x=10, y=3, z; 则语句printf(\的输出结果是 。
3、表示条件10 < x <100或者x < 0的C语言表达式是 。
4、使用强制类型转换运算符,可以将一个表达式转换成给定的类型。(int)3.8 + 1.3的值是 ,(int)(3.8 + 1.3) 的值是 。 5、下列程序段的功能是计算:s=1+12+123+1234+12345,则划线出应填 。
int i, s=0, t=0; for(i=1;i<=5;i++){ t=i+ ; s=s+t; }
第2页 共6页
2、设计计算两点间距离的函数,实现程序功能。
程序功能:给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留2位小数)。要求定义和调用函数dist(x1, y1, x2, y2)计算两点间的距离。
#include
第3页 共6页
3、补齐程序语句,使程序功能完整。
程序功能:输入精度e,使用格雷戈里公式求π的近似值,精确到最后一项的绝对值小于e。
?1114?1?3?5?7??
第4页 共6页
#include
1、有36块砖,共36人搬,成年男子一次搬4块砖,成年女子一次搬3块砖,儿童两人抬1块砖,恰好一次全部搬完,编程求出成年男子 成int main(void) { 年女子和儿童各有多少人。 double e, pi; /* e 代表精度 */ printf(\ /* 提示用户输入精度 */ scanf(\ /*精度以科学计数法形式表示*/ /* 调用函数,把返回值赋值给 pi */ printf (\ return 0; } /* 定义计算pi的函数 */ { int denominator, flag; double item, sum; flag = 1; /* flag 表示第 i 项的符号,初始为正 */ denominator = 1; /* denominator表示第 i 项的分母,初始为1 */ item = 1.0; /* item 中存放第 i 项的值,初值取 1 */ /* 置累加和的初值为 0 */ /* 当|item| ≥ e时,执行循环 */ while(fabs(item) >= e){ /* 计算第第5页 i 共项的值6页 */ sum = sum + item; /* 累加第 i 项的值 */ flag = -flag; /* 改变符号,为下一次循环做准备 */ /* 分母递增2 ,为下一次循环做准备*/ } return sum * 4; (本题10分)
2、编写程序求余弦函数的近似值:输入x和精度e,用下列公式求cosx的近似值,精确到最后一项的绝对值小于e。要求定义和调用函数funcos(e,x)求余弦函数的近似值(保留3位小数)。(本题20分)
x0x2x4x6cosx??????
0!2!4!6!提示:(1)用while循环编程;(2)程序中进行绝对值计算时,可直接调用库中的绝对值函数fabs。例如:求x的绝对值,调用方法为:fabs(x)。
第6页 共6页