计算机C语言2.docx
《计算机C语言2.docx》由会员分享,可在线阅读,更多相关《计算机C语言2.docx(9页珍藏版)》请在冰豆网上搜索。
计算机C语言2
内蒙古农业大学
2008-2009学年第二学期
《C语言程序设计》课程考试试卷(二本A)
题号
一
二
三
四
五
总分
分值
20
20
10
15
35
100
得分
得分
评卷人
一、单项选择题(每小题2分,共20分)
1.在C语言中,用户能使用的合法标识符是()。
A.5fB.a-bC._fD.int
2.在C语言中,求平方根的数学函数是()。
A.fabs()B.sqrt()C.pow()D.exp()
3.在c语言中,char型数据在内存中的存储形式是()。
A.补码B.反码C.原码D.ASCII码
4.以下说法正确的是()。
A.不能使用do-while语句构成的循环
B.do-while语句构成的循环必须用break语句才能退出
C.do-while语句构成的循环,当while语句中的表达式值为假时结束循环
D.do-while语句构成的循环,当while语句中的表达式值为真时结束循环
5.以下程序的输出结果是()。
#include
#include
intmain()
{charstr[12]={'s','t','r','i','n','g'};
printf("%d\n",strlen(str));
}
A.6B.7C.12D.以上都不对
6.要判断char型变量m是否是数字字符,下列可以使用的表达式是()。
A.0<=m&&m<=9
B.‘0’<=m&&m<=’9’
C.“0”<=m&&m<=“9”
D.前面三个答案均是错误的
7.下面程序段的输出结果是()。
inta=3,b;
b=++a;
printf(“%d”,b);
A.3B.4C.5D.6
8设有以下语句,
inta[10]={0,1,2,3,4,5,6,7,8,9};int*p=a;对数组元素a[i](0≤i<10)引用正确的是()。
A.a[p]C.p[i]D.*(&(a+i))
9.在C语言中文件结构名是()。
A.fileB.FileC.FILED.struct
10.在C语言中,函数返回值类型由()来确定。
A.该函数的实参类型
B.调用该函数的主调函数类型
C.该函数的形参类型
D.在定义该函数时所指定的函数类型
得分
评卷人
二、判断题(每小题2分,共20分)
1.一个C程序必须有一个main()函数。
()
2.若有定义:
inta;则scanf("%d",a);可以给变量a赋值。
()
3.指针变量可以接收任何类型的值。
()
4.如果x>y为真或ay)&&(a
()
5.若有定义inta[10];,则数组名a表示a[0]的地址。
()
6.同一数组可以存储不同类型的值。
()
7.在函数的定义和调用过程中,形参和实参数目可以不一致。
()
8.if语句和for语句都可以使用嵌套形式。
()
9.在C语言程序设计中,字符数组和字符串不是完全一样的概念。
()
10.在定义二维数组时,可以将该数组的两个维数全部省略。
()
《》试卷(A/B)第页(共页)
《》试卷(A/B)第页(共页)
得分
评卷人
三、程序填空题(每空2分,共10分)
1.计算球体体积并输出。
#include
intmain()
{
floatr,v;
scanf("
(1)",&r);
v=4*3.14*r*r*r/3;
printf("v=%f\n",v);
}
2.输出100以内能被3整除且个位数为6的所有整数。
#include
intmain()
{inti;
for(i=0;i<100;i++)
{if(
(2)&&(3))
printf("%d",i);
}}
3.定义一个学生结构,并输出学生的学号、姓名和成绩。
#include
(4)student
{intnumber;
charname[20];
intscore;};
structstudents={1001,"Rock",90};
intmain()
{printf(“%d%s%d”,s.number,(5),s.score);}
得分
评卷人
四、写出下列程序段的输出结果(每小题3分,共15分)
1.#include
intmain()
{
intc;
scanf("%d",&c);
switch(c)
{case1:
printf("A");
break;
case2:
printf("B");
break;
case3:
printf("C");
break;
default:
printf("D");}
return0;}
程序运行时输入2
#include
intmain()
{inti,a[5];
for(i=0;i<5;i++)
a[i]=i+2;
for(i=0;i<5;i=i+2)
printf("%d",a[i]);return0;}
3.
#include
intmain()
{
inti,s=0;
for(i=1;i<10;i++)
{
if(i%2==0||i%3==0)continue;
s=s+i;
}
printf(“s=%d\n”,s);
}
4.
#include
intmain()
{
inti,a[5]={1,2,3};
for(i=0;i<5;i++)
printf("%d",a[i]);
return0;
}
5.
#include
intmain()
{
int*p1,*p2;
intx=5,y=10,t;
p1=&x;p2=&y;
t=*p1;
*p1=*p2;
*p2=t;
printf("x=%dy=%d",x,y);
return0;
}
得分
评卷人
五、编写程序(每小题7分,共35分)
1.从键盘输入一个整数,编程判断是奇数还是偶数,如果是奇数输出“oddnumber”,是偶数输出“evennumber”,是负数输出“inputerror”。
2.从键盘输入100个学生成绩,计算出平均分并将结果输出(结果保留两位小数)。
3.用
公式求
的近似值,直到最后一项的绝对值小于
为止,请编程实现。
4.从键盘输入10个数,保存在数组中,找出数组中的最大值及其下标,并将结果打印输出。
5.猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
《》试卷(A/B)第页(共页)
第二天将剩下的桃子吃掉一半,又多吃了一个。
以后每天都吃了前一天剩下的一半零一个。
到第10天想再吃时,见只剩下一个桃子了。
求第一天一共摘了多少桃子?
(提示:
采取逆向思维的方法,从后往前推断)