C语言试卷 含答案

发布 2021-04-23 13:35:28 阅读 7048

一、 单项选择题(每小题2分,共40分)

1、sizeof(float)是。

a. 一个双精度型表达式。

b. 一个整型表达式。

c. 一种函数调用。

d. 一个不合法的表达式。

2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值:

scanf("i=%d,f=%f",&i,&f);

为了把100和765.12分别赋给i和f,则正确的输入为()。

a. 100765.12

b. i=100,f=765.12

c. 100《回车》765.12

d. x=100y=765.12

#include<>

voidmain()

inta=3,b=2,c=1;

intx=10,y=20;

if(aa. 20

b. 1c. 0

d. -14、c语言中,while和do…while循环的主要区别是()。

a. do…while的循环体至少无条件执行一次。

b. while的循环控制条件比do…while的循环控制条件严格。

c. do…while允许从外部转到循环体内。

d. do…while的循环体不能是复合语句。

5、执行下面的c程序段后,输出结果是()。

inta=5;

while(a--)

printf("%d",a);

a. 54321

b. 4321

c. 0d. -1

6、在c语言中,( 是在所有函数外部声明的。

a. 全局变量。

b. 局部变量。

c. 形参。

d.实参。7、分析下面的c程序:

#include<>

voidmain()

intnum=0;

while(num<=2)

输出结果是()。

a. 123

b. 012

c. 23d. 12

8、下面的c语言**段的输出结果是()。

intj;for(j=1;j<10;j+=2)

printf("%d",j);

a. 123456789

b. 2468

c. 13579

d. 12468

9、在c语言中,表达式:10!=9的值是( )

a. true

b. 非零值。

c. 0d. 1

10、分析下面的c**段:

charstr1[15]="se**iew";

charstr2[15]="seabreeze";

strcpy(str1,str2);

printf("%s",str1);

则输出结果是。

a. se**iew

b. seabreeze

c. se**iewseabreeze

d. seabreezese**iew

10、若w=1,x=2,y=3,z=4,则条件表达式wa. 4

b. 3c. 2

d. 111、表达式18/4*sqrt(4.0)/8值的数据类型为。

a. int

b. float

c. double

d. 不确定。

12、在c语言中,不正确的int类型的常数是( )

a. 32768

b. 0 c. 037

d. 0xaf

13、语句:printf("%d",(a=2)&&b=-2);的输出结果是( )

a. 无输出

b. 结果不确定

c. -1

d. 114、下列描述中不正确的是( )

a. 字符型数组中可以存放字符串。

b. 可以对字符型数组进行整体输入、输出。

c. 可以对整型数组进行整体输入、输出。

d. 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值。

15、以下选项中不能作为c 语言合法常量的是( )

a. 'cd'

b. 0.1e+6

c. "a"

d. '011'

16、以下叙述中错误的是( )

a.用户定义的函数中可以没有return 语句。

b.用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值。

c.用户定义的函数中若没有return 语句,则应当定义函数为void 类型。

d.函数的return 语句中可以没有表达式。

17、若有定义语句:int m=i=4;,则下面对m 数组元素的引用中错误的是。

a.m[--i]

18、已知字母a的ascⅱ**值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是。

>='a'&&kk<='z'

b.!(kk>='a'‖kk<='z')

c.(kk+32)>=a'&&kk+32)<=z'

19、若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是。

a.函数的实参和其对应的形参共占同一存储单元。

b.形参只是形式上的存在,不占用具体存储单元。

c.同名的实参和形参占同一存储单元。

d.函数的形参和实参分别占用不同的存储单元。

20、以下叙述中错误的是。

a.改变函数形参的值,不会改变对应实参的值。

b.函数可以返回地址值。

c.可以给指针变量赋一个整数作为地址值。

d.当在程序的开头包含文件时,可以给指针变量赋null

21、以下描述正确的是( )

程序的执行是从main函数开始,到本程序的最后一个函数结束。

程序的执行是从第一个函数开始,到本程序的最后一个函数结束。

程序的执行是从main函数开始,到本程序的main函数结束。

程序的执行是从第一个函数开始,到本程序的main函数结束。

二、将下列程序补充完整。(每空2.5分,共30分)

1.输入三角形的三条边a,b,c,求三角形的面积。

#include <>

#include <>

void main( )

1) _a+b<=c&&a+c<=b&&b+c<=a

2) _a+b+c

2.输入两个整数,n1,n2(要求n1#include <>

void main()

int n1,n2,j=0,n=0;

printf(“请输入两个数:”)

scanf3

if(n1>n2)

for(j=n1;j<=n2,j++)

if ( 5 ) n++;

printf(“a=%5d,b=%5d,n=%5d”n1,n2,n);}

3)__d %d", n1, &n2

4) _printf("输出的值非法!enter任意键退出");getch();exit(0

5)__j%3==0

3.输入两个整数,n1,n2(要求n1 #include <>

#include <>

int prime (int x)

for(j=a;j<=b,j++)

if( (8) )n++;

printf(“a=%4d,b=%4d,n=%4d”a,b,n);}

6) _k=2;k<=x-1;k++

7) _printf("输出的值非法!enter任意键退出");getch();exit(0);

8) prime(j

4.编写程序,输入n个整数(n由键盘输入),统计其中正数、负数和零的个数。

#include <>

void main( )

int x,n,k,k1=0,k2=0,k3=0;

printf(“input n=:”

for(k=0;k

9)scanf ("d", n);

10)else if (x==0) k2++;

5.设计一个程序完成以下功能:若从键盘输入英文字母,则原样输出;输入其他字符不理会,直到输入q键结束。

c语言试卷 含答案

螇。一 选择题 26分 肆1.正确的c语言标识符是 a 蒆a buy 2 b 2 buy c buy d buy?肁2.以下选项中,合法转义字符的选项是 a 袇 ab 018 c xcb d ab 蒇3 下列语句中,错误的是 b 袄a define pi 3.14159b include 袀c if...

C语言试卷答案

程序设计语言 c 模拟试卷。一 试题一 40分,每小题4分 按题目要求解答下列各小题。1.定义一个大小为6的数组,并且使数组的值都为0。int a 6 2.写出执行如下程序段后的输出结果。char a hello p p a 2 printf s p llo 3.假设你有x是一个float变量,而不...

C语言试卷A答案

一 选择题 1 10 每小题2分,11 50 每小题1分,共60分 下列各题a b c d 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。1 算法能正确地实现预定功能的特性称为算法的。a 确定性 b 易读性 c 健壮性 d 高效性。答案 a评析 算法的确定性...