级数学系本科班C语言程序设计期末考试试题答案及解析.docx
- 文档编号:3200333
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:12
- 大小:21.02KB
级数学系本科班C语言程序设计期末考试试题答案及解析.docx
《级数学系本科班C语言程序设计期末考试试题答案及解析.docx》由会员分享,可在线阅读,更多相关《级数学系本科班C语言程序设计期末考试试题答案及解析.docx(12页珍藏版)》请在冰豆网上搜索。
级数学系本科班C语言程序设计期末考试试题答案及解析
2006级数学系本科班C语言程序设计期末考试试题答案及解析
一、单项选择题,答案不写入答题栏的一律不得分!
(每题1.5分,共52.5分)
1、结构化程序设计的3种结构是。
A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构
C)多分支结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构
2、以下叙述中正确的是。
A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行
C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D)C语言出现的最晚,具有其他语言的一切优点
3、C语言中最简单的数据类型包括。
A)整型、实型、逻辑型B)整型、实型、字符型
C)整型、字符型、逻辑型D)字符型、实型、逻辑型
4、若变量已正确定义并赋值,以下符合C语言语法的表达式是。
A)a:
=b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+b
5、若变量a,i已正确定义,且i已正确赋值,合法的语句是。
A)a==1B)++i;C)a=a++=5;D)a=int(i);
6、已知:
intt=0;
while(t=1){...}
则以下叙述正确的是。
A)循环控制表达式的值为0B)循环控制表达式的值为1
C)循环控制表达式不合法D)以上说法都不对
7、若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是。
A)10<回车>22<回车>33<回车>B)10.0,22.0,33.0<回车>
C)10.0<回车>22.033.0<回车>D)1022<回车>33<回车>
[解析]遇到"%d%d%d"或"%f%f%f"不能用逗号作几个数据间的分隔符。
8、有如下程序:
main()
{
intx=1,a=0,b=0;
switch(x)
{
case0:
b++;
case1:
a++;
case2:
a++;b++;
}
printf("a=%d,b=%d\n",a,b);}
该程序的输出结果是
A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2
[解析]根据x=1,执行case1,接着并未退出switch,而是执行case2。
即找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。
9、有以下程序
main()
{inti=1,j=1,k=2;
if((j++||k++)&&i++)
printf("%d,%d,%d\n",i,j,k);
}
执行后输出结果是。
A)1,1,2B)2,2,1C)2,2,2D)2,2,3
[解析]本题关键在于k保持原值2不变,因为或运算只需要检验j++是否为真即可判断整个表达式j++||k++为真,相当于没有执行k++。
10、有如下程序
main()
{floatx=2.0,y;
if(x<0.0)y=0.0;
elseif(x<10.0)y=1.0/x;
elsey=1.0;
printf("%f\n",y);}
该程序的输出结果是。
A)0.000000B)0.250000C)0.500000D)1.000000
11、有如下程序:
main()
{intn=9;
while(n>6){n--;printf("%d",n);}
}
该程序的输出结果是。
A)987B)876C)8765D)9876
[解析]第一遍循环n=9,执行n--,输出n现值8,以此类推得到B答案。
12、在下列选项中,没有构成死循环的是。
A)inti=100;
while
(1)
{i=i%100+1;
if(i>100)break;
}
B)for(;;);
C)intk=10000;
do{k++;}while(k>10000);
D)ints=36;
while(s)--s;
[解析]A选项if表达式的条件是假,而while表达式是真,构成死循环;B选项相当于while
(1),无终止的执行循环体;C选项第一次执行循环后k=10001,自此后k>10000恒为真,无终止循环;D答案选项当s自减至0时,while表达式为假,跳出循环。
13、设intx=1,y=1;表达式(!
x||y--)的值是。
A)0B)1C)2D)-1
14、有以下程序
floatfun(intx,inty)
{return(x+y);}
main()
{inta=2,b=5,c=8;
printf("%3.0f\n",fun((int)fun(a+c,b),a-c));
}
程序运行后的输出结果是。
A)编译出错B)9C)21D)9.0
[解析](int)fun(a+c,b)为(int)fun(10,5),经调用后值为15;接着计算fun((int)fun(a+c,b),a-c)为fun(15,-6),经调用后值为9。
15、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是。
A)函数调用可以作为独立的语句存在B)函数调用可以作为一个函数的实参
C)函数调用可以出现在表达式中D)函数调用可以作为一个函数的形参
16、若有以下调用语句,则不正确的fun函数的首部是。
main()
{…
inta[50],n;
…
fun(n,&a[9]);
…
}
A)voidfun(intm,intx[])B)voidfun(ints,inth[41])
C)voidfun(intp,int*s)D)voidfun(intn,inta)
[解析]把数组a中9号元素的地址传递给fun的函数参数,本题的考点是用什么来做函数的形参。
A选项用不定长度的数组x作形参;B选项用长度小于50的数组h作形参;C用指针变量*s作形参;显然D中形参变量a只是普通的整形变量,不能接收来自于实参9号元素的地址。
17、fseek函数的正确调用形式是。
A)fseek(文件指针,起始点,位移量)B)fseek(文件指针,位移量,起始点)
C)fseek(位移量,起始点,文件指针)D)fseek(起始点,位移量,文件指针)
18、若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是。
A)EOFB)-1C)1D)NULL
19、若有说明语句:
charc='\72';则变量c。
A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法,c的值不确定
20、若有说明inta[3][4];则a数组元素的非法引用是。
A)a[0][2*1]B)a[1][3]C)a[4-2][0]D)a[0][4]
21、设有以下说明语句
structstu
{inta;
floatb;
}stutype;
则下面的叙述不正确的是。
A)struct是结构体类型的关键字B)structstu是用户定义的结构体类型
C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名
22、在C语言中,引用数组元素时,其数组下标的数据类型允许是。
A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式
23、若运行时给变量x输入12,则以下程序的运行结果是。
main()
{intx,y;
scanf("%d",&x);
y=x>12?
x+10:
x-12;
printf("%d\n",y);
}
A)0B)22C)12D)10
24、以下说法正确的是。
A)C语言程序总是从第一个的函数开始执行
B)在C语言程序中,要调用函数必须在main()函数中定义
C)C语言程序总是从main()函数开始执行
D)C语言程序中的main()函数必须放在程序的开始部分
25、表达式0x13^0x17的值是。
A)0x04B)0x13C)0xE8D)0x17
26、有以下程序
#defineF(X,Y)(X)*(Y)
main()
{inta=3,b=4;
printf("%d\n",F(a++,b++));
}
程序运行后的输出结果是。
A)12B)15C)16D)20
27、下列程序执行后的输出结果是。
voidfunc(int*a,intb[])
{b[0]=*a+6;}
main()
{inta,b[5];
a=0;b[0]=3;
func(&a,b);printf("%d\n",b[0]);
}
A)6B)7C)8D)9
[解析]func(&a,b)中两个参数分别把整形变量a的地址传递给指针变量*a、把数组b(即数组名作实参)首元素的地址传递给形参数组b[]。
因此在func()函数中,b[0]=*a+6=0+6=6。
28、若有下面的程序段:
chars[]="china";char*p;p=s;
则下列叙述正确的是。
A)s和p完全相同B)数组s中的内容和指针变量p中的内容相等
C)s数组长度和p所指向的字符串长度相等D)*p与s[0]相等
29、有以下程序
voidsort(inta[],intn)
{inti,j,t;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 级数 学系 科班 语言程序设计 期末考试 试题答案 解析
![提示](https://static.bdocx.com/images/bang_tan.gif)