C语言试题Word文档格式.docx
- 文档编号:16451277
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:27
- 大小:25.84KB
C语言试题Word文档格式.docx
《C语言试题Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言试题Word文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
97,a
D
要表示年龄(age)在18至25之间,正确的表达是()。
18<
=age<
=25
age>
=18&&age<
=age||age<
=ageandage<
B
一个char型数据,它的值在内存中存放的是()。
ASCII码值
BCD码值
内码值
十进制码值
字符串"
xyz"
在内存中占用的字节数是()。
3
4
5
6
以下选项中,能做为C语言程序自定义标识符的是()。
num(10)
file_bak
break
class+2
定义一个具有8个元素的整型数组,应使用语句()。
inta[8]
inta[2,4]
floata[8]
floata[2,4]
下列一维数组说明中,错误的是()。
inta[]={1,2,3}
inta[5]
intn,a[n]
inta[5]={1,2,3}
函数调用时,下列说法中不正确的是()。
若用值传递方式,则形式参数不予分配内存
实际参数和形式参数可以同名
主调函数和被调用函数可以不在同一个文件中
函数间传递数据可以使用函数返回值
下列选项中,不是C语言提供的合法关键字的是()。
switch
begin
case
default
在c语言中,下列说法中错误的是()。
函数定义可以分为两个部分:
函数说明部分和函数体
主函数可以调用任何非主函数
任何非主函数可以调用其他任何非主函数
程序可以从任何函数开始执行
C语言中运算对象必须是整型的运算符是()。
/
>
m=12,n=34;
%d%d"
m++,++n);
%d%d\n"
n++,++m);
程序运行后的输出结果是()。
12353514
12353513
12343514
12343513
若已定义x和y为double类型,则表达式x=1,y=x+3/2的结果是()。
1
2
出错
2.5
设inta=8,b=7,c=6,x=1;
则执行下列语句if(a>
6)if(b>
7)if(c>
8)x=2;
elsex=3;
后x的值是()。
设a为5,执行下列语句后,b的值不为2的是()。
b=a/2
b=6-(--a)
b=a%2
b=a<
3?
3:
在下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是()。
8
23
17
对语句inta[10]={6,7,8,9,10};
的正确理解是()。
将5个初值一次赋给a[1]至a[5]
将5个初值一次赋给a[0]至a[4]
将5个初值一次赋给a[6]至a[10]
因为数组长度与初值的个数不相同,所以语句不正确
若有以下定义:
chara;
intb;
floatc;
doubled;
则表达式a*b+d-c值的类型为()。
float
int
char
double
一个C程序的执行是从()。
本程序的main函数开始,到main函数结束
本程序的第一个函数开始,到本程序文件的最后一个函数结束
本程序的main函数开始,到本程序文件的最后一个函数结束
本程序文件的第一个函数开始,到本程序main函数结束
使用scanf("
x=%f,y=%f"
&x,&y)函数调用,要使x,y均为1.25,正确的输入是()。
1.25,1.25
1.251.25
x=1.25,y=1.25
x=1.25y=1.25
若i,j已定义为int类型,则以下程序段for(i=5;
i>
1;
i--)for(j=0;
j<
4;
j++){…}内循环的执行次数是()。
16
24
25
30
设x,y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是()。
'
x'
&&'
y'
x<
=y
x||y+z&&y-z
!
((x<
y)&&!
z||1)
语句:
charc[10];
则正确的输入语句是()。
scanf("
%d%s"
&b,&c)
&b,c)
b,c)
b,&c)
以下if语句语法正确的是()。
if(x>
0)printf("
%f"
x)elseprintf("
-x);
0){x=x+y;
x);
}elseprintf("
};
elseprintf("
x)};
elseprintf("
表达式9!
=7的值是()。
true
非0值
以下叙述正确的是()。
在C程序中,每行中只能写一条语句
若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整数
在C程序中,无论是整数还是实数,都能被准确无误地表示
在C程序中,%是只能用于整数运算的运算符
一个C语言程序是由()。
一个主程序和若干个子程序组成
函数组成
若干个过程组成
若干个子程序组成
以下不正确的叙述是()。
在C程序中所用的变量必须先定义后使用
在程序中,APH和aph是两个不同的变量
若a和b类型相同,在执行了赋值语句a=b;
后b中的值将放入a中,b中的值不变
当输入数值数据时,对于整型变量只能输入整型值;
对于实型变量只能输入实型值
1.编程输入x的值,求y=x20-2*x10+5的值,程序文件命名为program1.c,保存到D:
\I文件夹中。
2.编程输入年份,判断它是否是闰年(两个条件:
能被4整除但不能被100整除或者能被400整除),程序文件命名为program2.c,保存到D:
3.编程求出100~999的所有的水仙花数(所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身),程序文件命名为program3.c,保存到D:
4.编程求出1~100之间的全部素数。
程序文件命名为program4.c,保存到D:
5.使用数组编写程序,输入5个学生6门课程的成绩,输出5个学生中平均分最高的学生的平均分。
程序文件命名为program5.c,保存到D:
应学院2010~2011学年第一学期
《C语言程序设计》考试题(I卷)
参考答案及评分标准
选择题
参考答案
7
9
10
11
12
13
14
15
18
19
20
21
22
26
27
28
29
选择题评分标准:
单选题每小题选对得1.5分,共45分。
错选、漏选均不给分。
本题由计算机软件阅卷。
编程题
编程题评分标准:
第1、2、3、4题,每题10分;
第5题15分。
共55分。
程序文件名命名错误不得分。
参考程序:
program1.c:
#include<
stdio.h>
math.h>
voidmain()
{
floatx,y;
printf("
请输入x的值:
"
);
scanf("
&
x);
y=pow(x,20)-2*pow(x,10)+5;
y=%f\n"
y);
}
评分标准:
1、变量定义正确得2分。
2、输入正确得2分。
3、输出正确得2分。
4、中间处理过程及其他得4分。
program2.c:
intyear;
请输入一个年份:
%d"
year);
if((year%4==0&
&
year%100!
=0)||(year%400==0))
%d是闰年!
\n"
year);
else
%d不是闰年!
program3.c:
inti,j,k,n;
水仙花数是:
for(n=100;
n<
1000;
n++)
{
i=n/100;
j=(n-i*100)/10;
k=n-i*100-j*10;
if(n==pow(i,3)+pow(j,3)+pow(k,3))
printf("
%d"
n);
}
2、个位、十位、百位提取正确各得1分,共3分。
3、循环结构使用正确及其他得得5分。
program4.c:
{intm,k,i,n=0;
for(m=1;
m<
=100;
m++)
{k=sqrt(m);
for(i=2;
i<
=k;
i++)
if(m%i==0)
break;
if(i>
=k+1)
printf("
m);
2、二重循环结构使用正确及其他得得8分。
program5.c:
doublescore[5][7],sum,max=0;
inti,j;
for(i=0;
5;
请输入第%d个学生的6门课程的成绩:
i+1);
for(j=0;
6;
j++)
scanf("
%lf"
score[i][j]);
sum=0;
sum=sum+score[i][j];
score[i][6]=sum/6.0;
if(score[i][6]>
max)
max=score[i][6];
5个学生中平均分最高的学生的平均分为:
%lf\n"
max);
1、数组和变量定义正确得2分。
2、数据输入正确得2分。
3、求每个学生的平均分正确得5分;
4、求最高的学生的平均分正确得4分
5、数据输出正确及其他得2分。
stdlib.h>
time.h>
inta,b,answer,error,score,i;
srand(time(NULL));
error=0;
score=0;
10;
a=rand()%10+1;
b=rand()%10+1;
srand(time(NULL)),srand和rand
srand(time(NULL))是什么意思,在srand里加的tine(NULL)有什么作用,srand和rand的区别是什么
time(NULL)返回当前时间,实质上是从1970年1月1日午夜(00:
00:
00)至今的秒数。
srand是对随机数生成器进行初始化操作,设置随数种子
rand每次调用返回一个随机数。
C语言运行时库的随机数生成器只能生成伪随机数。
即通过srand设置的种子值进行复杂计算模拟随机数。
因为如果用相同的数作种了,rand会生成相同的随机数序列。
考虑以下代码:
for(j=0;
j<
3;
j++)
srand(0);
for(i=0;
i<
i++)
{
%d,"
rand());
}
puts("
输出结果是:
38,7719,21238,2437,8855,
为什么要这样做呢,其实很简单。
1.time()函数表示返回1970-1-100:
00到当前时间的秒数,而time(NULL)表示获取一个时间,准确的说,获取一个指针的地址。
2.srand()函数是产生随机数种子的。
在产生随机数rand()被调用的时候,他会查看:
如果用户之前调用过srand(seed)的话,他会重新调用一遍srand(seed)以产生随机数种子;
如果发现没有调用过srand(seed)的话,会自动调用srand
(1)一次。
所以,如果希望rand()每次调用产生的值都不一样,就需要每次调用srand(seed)一次,而且seed不能相同。
综合上述两点,那就很明了了。
srand(unsigned(time(NULL)))表示产生随机数种子以保证rand()调用的时候不会出现重复的随机值
《C语言程序设计》考试题(J卷)
1.输入三角形的三条边,编写程序求三角形的面积(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2),程序文件命名为program1.c,保存到D:
\J文件夹中。
2.编写程序求ax2+bx+c=0方程的实根,程序文件命名为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)