2010~2011学年度第一学期10级《C语言》期末考试试卷( B卷与参考答案 ) 班级 1011计网 学号 姓名 总分
(适用班级:1011计网 ) (考试形式:闭卷 时间:90分钟)
题号 一 二 三 总 分 得分
一、选择题(每题2分,共60分)
1、C语言程序的基本单位是( C )
A) 程序行 B) 语句 C) 函数 D) 字符 2、C语言程序的三种基本结构是( A )
A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构 3、C语言可执行程序的开始执行点是( C )
A) 程序中第一条可执行语句 B) 程序中第一个函数
C) 程序中的main函数 D) 包含文件中的第一个函数 4、C语言中,运算对象必须是整型数的运算符是( A )
A) % B) \\ C) %和\\ D) * * 5、C语言中数组下标的下限是( B )。
A、1 B、0 C、视具体情况 D、无固定下限 6、C语言中最简单的数据类型包括( B )
A) 整型、实型、逻辑型 B) 整型、实型、字符型
C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型
7、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是( B ) A) input x,y,z; B) scanf(\"%d%d%d\ C) scanf(\"%d%d%d\ D) read(\"%d%d%d\ 8、表达式:10!=9的值是 ( D )
A) true B) 非零值 C) 0 D) 1
9、表示关系x<=y<=z的c语言表达式为( A )
A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z) C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z) 10、下列运算符其优先级最高的是( C )。 A、|| B、&& C、+ D、=
11、下面的DO循环中,一共循环( D )次。 M=5 N=1 DO WHiLE N<=M N=N+1 ENDDO (A) 1 (B) 6 (C) 4 (D) 5
12、一个C语言的语句至少应包一个( C )
A、{} B、逗号 C、分号 D、什么不要
13、在C语言程序中,注释部分从哪开始,到哪结束?( D ) A、从(到)结束 B、从REM开始无结束志标志 C、无起始标志 D、从/*开始,*/结束 14、在C语言中,要求运算数必须是整型的运算符是( A ) A) % B) / C) < D) !
15、在C语言程序中,可以用做变量名的是( B ) A) 1e5 B) a1 C) int D) *p
16、以下程序的输出结果是____ i=5; i=++i*4+2; ( D )
A、5 B、6 C、23 D、26
17、 在 C 语言中,每个语句必须以( D )结束。
A. 回车符 B. 冒号 C. 逗号 D. 分号 18、结构化程序设计的3种结构是( D )
A)顺序结构、选择结构、转移结构 B)分支结构、等价结构、循环结构 C)多分支结构、赋值结构、等价结构 D)顺序结构、选择结构、循环结构 19、下列常用的转义字符属于换行的是(A ) A、\\n B、\ C、\\b D、\\f
20、下列常用的格式字符用于十进制整数的是(D ) A、%c B、%O B、%x D、%d
21、在一个源程序中main函数的位置( D )。
A.必须在最开始 B.必须在最后
C.必须在预处理命令的后面 D.可以在其他函数之前或之后 22、下列叙述中正确的是( C )。
A. main函数必须出现在其他函数之前 B. main函数中至少必须有一条语句
C. C程序总是从main函数的第一条语句开始执行
D. C程序总是在执行完main函数的最后一条语句后结束 23、 以下叙述中正确的是( C )。
A. C语言系统以函数为单位编译源程序 B. main函数必须放在程序开始
C. 用户定义的函数可以被一个或多个函数调用任意多次 D. 在一个函数体内可以定义另外一个函数 24、 以下叙述中正确的是( C )。
A) C语言程序将从源程序中第一个函数开始执行
B) 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C) C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D) main可作为用户标识符,用以命名任意一个函数作为主函数 25、以下叙述中正确的是 ( C ) 。
A) C程序中的注释只能出现在程序的开始位置和语句的后面。
B) C程序书写格式严格,要求一行内只能写一个语句 C) C程序书写格式自由,一个语句可以写在多行上 D) 用C语言编写的程序只能放在一个程序文件中 26、以下叙述中正确的是( C )。
A)C程序的基本组成单位是语句
B)C程序中的每一行只能写一条语句 C)简单C语句必须以分号结束 D)C语句必须在一行内写完
27、已知有声明“int a=3,b=4,c;”,则执行语句“c=1/2*(a+b);”后,c的值为( A )。 A. 0 B. 3 C. 3.5 D. 4
28、已知有声明“int a=3,b=4,c=5; ”,以下表达式中值为0的是( D )。
A.a&&b B. a<=b C. a||b&&c D. B>=c 29、若有声明“float f=123.45678;”,则执行语句“printf( ”%.3f“,f );”后,输出结果是( B )。A. 1.23e+02 B. 123.457 C. 123.456780 D. 1.234e+02 30、下列格式字符属于输入单精度实数的是( C ) A、%d B、%x C、%f D、%e
二、填空题(每题2分,共20分)
1、C语言程序是从 main() 函数开始执行的。 2、在程序运行中,其值保持不变的量叫 常量 3、在C语言中以 0 开头的的数是八进制数。 4、基本型(整型)变量,用 int 表示。 5、把5×103
写成C语言中的e指数形式为 5e3 6、标准的输出函数是 printf()
7、写出算式a2b7dc的C语言表达式 (a+2*b)/(7*d-c)
8、逗号表达式a=2,a-=1,a*7的值是 7 9、逻辑与运算的运算符是 &&
10、定义一个3行4列数组名为a整型二维数组 int a[3][4]
三、编程题(每题5分,共20分)
1、试编写一个能在屏幕上输出以下字符的程序 “how are you?”
main() {
printf(“how are you?”); }
2、试编写一个程序,从键盘输入两个数,将其中小数输出。
main() {
int a,b;
scanf(“请输入两个数:%d,%d\\n”,&a,&b); if(aprintf(“小的数为:%d\\n”,a); else
printf(“小的数为:%d\\n”,b); }
3、试编写出一个求1+2+3„„+100之和的程序。
main() {
int i,s=0;
for(i=1;i<=100;i++) s=s+i;
printf(“1加到100的值为:%d\\n”,s); }
4、试编写一个程序,求3个电阻值分别为r1,r2,r3的电阻串联后电路的总电阻值(r),已知公式为: r=r1+r2+r3 要求从键盘输入三个电阻,输出有文字说明,取两位小数. main()
{
float r1,r2,r3,r;
printf(“请输入三个电阻值:\\n”); scanf(“%f%f%f”,&r1,&r2,&r3); r=r1+r2+r3;
printf(“总电阻为:%6.2f\\n”,r); }
因篇幅问题不能全部显示,请点此查看更多更全内容