C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校_第1页
C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校_第2页
C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校_第3页
C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校_第4页
C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计知到智慧树章节测试课后答案2024年秋青岛西海岸新区高级职业技术学校项目一单元测试

计算机内部运算使用的数是()

A:八进制数B:十进制数C:二进制数D:十六进制数

答案:二进制数一个C语言程序是由()

A:若干子程序组成B:若干过程组成C:函数组成D:一个主程序和若干个子程序组成

答案:函数组成C语言具有低级语言的能力,主要指的是()

A:具有控制流语句B:具有现代化语言的各种数据结构C:程序的可移植性D:能直接访问物理地址,可进行位操作

答案:能直接访问物理地址,可进行位操作C语言是一种()

A:低级语言B:机器语言C:高级语言D:汇编语言

答案:高级语言下列各项中,不是C语言的特点是()

A:语言简洁、紧凑,使用方便B:数据类型丰富,可移植性好C:能实现汇编语言的大部分功能D:有较强的网络操作功能

答案:能实现汇编语言的大部分功能在宏定义#definePI3.14159中,用宏名PI代替一个()

A:双精度数B:单精度数C:字符串D:常量

答案:字符串若有宏定义如下:

#defineX5

#defineYX+1

#defineZY*X/2

则执行以下printf语句后,输出结果是()

A:12B:8C:7D:14

答案:7若有以下宏定义:

#defineN2

#defineY(n)((N+1)*n)

则执行语句z=2*(N+Y(5));后的结果是()

A:z无定值B:z=70C:语句有错误D:z=34

答案:z=34#define能作简单的替代,用宏替代多项式a*x*x+3*x+2之值的函数f,正确的宏定义是()

A:#definef4*x*x+3*x+2B:#define(4*a*a+3*a+2)f(a)C:#definef(a)(4*a*a+3*a+2)D:#definef(x)4*x*x+3*x+2

答案:#definef(x)4*x*x+3*x+2以下程序的输出结果为()#define

PT

5.5#define

S(x)

PT*x*xmain(){

inta=1,b=2;printf(“%4.1f\n”,S(a+b));}

A:33.5B:12.5C:9.5D:12.0

答案:9.5

项目二单元测试

C语言中的基本数据类型包括()

A:整型、实型、逻辑型B:整型、字符型、逻辑型C:整型、实型、逻辑型、字符型D:整型、实型、字符型

答案:整型、实型、字符型下列常数中不能作为C语言常量是()

A:0582B:3e2C:2.5e-2D:0x45

答案:0582下面4个选项中,均是合法转义字符的选项是()

A:’\018’,’\f’,’xab’B:’\\0,’101’,’xlfC:’\”,’’\\’,’\n’D:’\’,’\017’,’\’

答案:’\”,’’\\’,’\n’在C语言中,数字029是一个()

A:十六进制数B:八进制数C:非法数D:十进制数

答案:非法数C语言中整数-8在内存中的存储形式是()

A:0000000000001000B:1111111111111000C:1000000000001000D:1111111111110111

答案:1111111111111000将字符g赋给字符变量c,正确的表达方式是()

A:c=“g”B:c=101C:c=’\147’D:c=’0147’

答案:c=’\147’已知:unsignedshortx=65535;则执行以下语句输出是()printf(“%d\n”,x);

A:无定值B:65535C:-1D:1

答案:-1已知:intx=10,y=3,z;,则下列语句的输出结果是()

Printf(“%d\n”,z=(x%y,x/y));

A:13B:4C:14D:15

答案:14设a=2,b=3,计算机表达式c=b*=a-1后,变量c的值是()

A:2B:5C:4D:3

答案:3已知:intx;floaty;,所用的scanf调用语句格式为:scanf(“x=%d,y=%f”,&x,&y);为了将数据10和66.6分别赋给x和y,正确的输入应当是()

A:x=10,y=66.6<回车>B:10,66.6<回车>C:x=10<回车>y=66.6<回车>D:10<回车>66.6<回车>

答案:x=10,y=66.6<回车>

项目三单元测试

已有定义:intx=3,y=4,z=5;则表达式!(x+y)+z-1&&y+z/2的值是()。

A:1B:6C:0D:2

答案:1逻辑运算符两侧运算对象的数据类型()。

A:可以是任何类型的数据B:只能是0或1C:只能是0或非0正数D:只能是整型或字符型数据

答案:可以是任何类型的数据选择出合法的if语句(设intx,a,b,c;)()。

A:if(a=b)c++;B:if(a=>b)c++;C:if(a=<b)c++;D:if(a<>b)c++;

答案:if(a=b)c++;能正确表示“当x的取值在[-58,-40]和[40,58]范围内为真,否则为假”的表达式是()。

A:(x>=-58)&&(x<=-40)&&(x>=40)&&(x<=58)B:(x>=-58)||(x<=-40)||(x>=40)||(x<=58)C:(x>=-58)&&(x<=-40)||(x>=40)&&(x<=58)D:(x>=-58)||(x<=-40)&&(x>=40)||(x<=58)

答案:(x>=-58)&&(x<=-40)||(x>=40)&&(x<=58)已知x=45,y=’a’,z=0;则表达式(x>=z&&y<’z’||!y)的值是()。

A:0B:语法错C:1D:“假”

答案:1设a=5,b=6,c=7,d=8,m=2,n=2,则执行(m=a>b)&&(n=c>d)后n的值为()。

A:1B:2C:3D:4

答案:2设x、y和z都是int类型变量,且x=3,y=4,z=5,则下面的表达式中,值为0的表达式为()。

A:x||y+z&&y-zB:!((x<y)&&!z||1)C:’x’&&’y’D:x<=y

答案:!((x<y)&&!z||1)为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

A:在其之前未配对的ifB:缩排位置相同的ifC:在其之前未配对的最近的ifD:同一行上的if

答案:在其之前未配对的最近的if以下关于运算符优先顺序的描述中正确的是()。

A:逻辑与运算符<关系运算符<算术运算符<赋值运算符B:赋值运算符<逻辑与运算符<关系运算符<算术运算符C:算术运算符<关系运算符<赋值运算符<逻辑与运算符D:关系运算符<算术运算符<赋值运算符<逻辑与运算符

答案:赋值运算符<逻辑与运算符<关系运算符<算术运算符以下程序的运行结果是()。

#include”stdio.h”

main()

{inta=1;

if(a++>1)printf(”%d\n”,a);

elseprintf(”%d\n”,a--);

}

A:1B:3C:0D:2

答案:2

项目四单元测试

以下程序的输出结果是()。

main()

{intn=4;

while(n--)

printf(〞%d〞,--n);

}

A:31B:20C:210D:321

答案:20以下程序的输出结果是()。

main()

{intx=10,y=10,i;

for(i=0;x>8;y=++i)

printf("%d%d",x--,y);

}

A:10990B:101091C:9876D:10192

答案:101091当执行以下程序段时。()

x=-1;

do

{x=x*x;}

while(!x);

A:循环体将执行两次B:循环体将执行无数多次C:循环体将执行一次D:系统将提示有语法错误

答案:循环体将执行一次执行以下程序后输出的结果是()。

main()

{inty=10;

do{y--;}while(--y);

printf("%d\n",y--);}

A:-1B:8C:0D:1

答案:0若有以下程序段,w和k都是整型变量

w=k;

LB:if(w==0)gotoLE;w--;printf(〞*〞);gotoLB;LE:则不能与上面程序段等价的循环语句是()。

A:for(w=k;w!=0;w--)print(〞*〞);B:w=k;

do

{w--;printf(〞*〞);}while(w!=0);

C:w=k;

while(w--!=0)printf(〞*〞);w++;D:for(w=k;w;--w)printf(〞*〞);

答案:w=k;

do

{w--;printf(〞*〞);}while(w!=0);

下面程序的运行结果是()。

main()

{intx,y,z;

x=0;y=z=-1;

x+=-z---y;

printf("x=%d\n",x);

}

A:x=0B:x=3C:x=2D:x=4

答案:x=2运行程序:

#include<stdio.h>

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:switch(y)

{case0:a++;break;

case1:b++;break;

}

case2:a++;b++;break;

}

printf("a=%d,b=%d\n",a,b);

}

上面程序的输出结果是()。

A:a=1,b=0B:a=2,b=2C:a=2,b=1D:a=1,b=1

答案:a=2,b=1下面程序的输出结果是()。

main()

{intx=3,y=6,a=0;

while(x++!=(y-=1))

{a+=1;

if(y<x)break;

}

printf("x=%d,y=%d,a=%d\n",x,y,a);

}

A:x=4,y=4,a=1B:x=5,y=4,a=1C:x=5,y=5,a=1D:x=5,y=4,a=3

答案:x=5,y=4,a=1若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。

for(i=5;i;i--)

for(j=0;j<4;j++)

{…}

A:30B:24C:25D:20

答案:20在C语言中,if语句后的一对圆括号中,用以决定分支的流程的表达式。()

A:只能用逻辑表达式或关系表达式B:只能用逻辑表达式C:可用任意表达式D:只能用关系表达式

答案:可用任意表达式

项目五单元测试

以下对一维整型数组a的正确说明是()。

A:intn;scanf(“%d,&n);inta[n];B:.#defineSIZE10

inta[SIZE];C:int

n=10,[n];D:inta(10);

答案:.#defineSIZE10

inta[SIZE];以下能对一维数组a进行正确初始化的语句是()。

A:inta[]={0};B:inta[10]={10*1};C:inta[10]={};D:inta[10]=(0);

答案:inta[10]={10*1};不是给数组的第一个元素赋值的语句是()。

A:inta[2]={1,0};B:inta[2];scanf(“%d”,&a[0]);C:a[1]=1;D:inta[2]={1};

答案:a[1]=1;下面程序的运行结果是()。

main()

{inta[6],i;

for(i=1;i<6;i++)

{a[i]=6*(i-2+4*(i>3))%5;

printf("%2d",a[i]);

}

}

A:-10403B:-10142C:-10112D:-10143

答案:-10112下列定义正确的是()。

A:int4e[4]B:staticinta[2]={1,2,3,4,5}C:inta(10)D:intb[3]={2,5}

答案:intb[3]={2,5}以下数组定义中不正确的是()。

A:inta[2][3];B:intb[][3]={0,1,2,3};C:intb[][3]={0,1,2,3};D:intd[1]]={{1,2},{1,2,3},{1,2,3,4}};

答案:intd[1]]={{1,2},{1,2,3},{1,2,3,4}};在C语言中,定义了一个数组后,就确定了它所容纳的具有相同数据类型元素的个数。()

A:错B:对

答案:错在c语言中,可以使用动态内存分配技术定义元素个数可变的数组。()

A:错B:对

答案:对在C语言中,数组元素的数据类型可以不一致。()

A:对B:错

答案:错若有说明:inta[3][4]={0};数组a每个元素均可得到初值,但值不一定为0。()

A:错B:对

答案:错

项目六单元测试

在C语言包中以下说法不正确的是:()

A:形参应有与其对应的实参类型一致B:实参可以为任意类型C:形参可以是常量、变量或表达式D:实参可以是常量、变量、或表达式

答案:形参可以是常量、变量或表达式以下程序有语法性错误,有关错误原因的正确说法是()

Intmain(){intG=5,k;Voidprt-char();……K=prt-char(G);……}

A:函数说明和函数调用语句之间有矛盾B:变量名不能使用大写字母C:语句Voidprt-char();有错,它是函数调用语句,不能用void说明D:函数名不能使用下划线

答案:函数说明和函数调用语句之间有矛盾以下正确的说法是:()

A:函数的定义和调用均不可以嵌套B:函数的定义可以嵌套,但函数的调用不可以嵌套C:函数的定义不嵌套,但函数的调用可以嵌套D:函数的定义和调用均可以嵌套

答案:函数的定义不嵌套,但函数的调用可以嵌套若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是:()

A:函数调用可以出现在表达式中B:函数调用可以作为一个函数的形参C:函数调用可以作为一个函数的实参D:函数调用可以作为独立的语句存在

答案:函数调用可以作为一个函数的形参以下所列的各函数首部中,正确的是:()

A:Subplay(aasinteger,basinteger)

B:voidplay(inta,intb)

C:voidplay(var:Integervarb:Integer)

D:voidplay(inta,b)

答案:voidplay(inta,intb)

return语句作为函数的出口,在一个函数体内只能有一个。()

A:对B:错

答案:错在C程序中,函数不能嵌套定义,但可以嵌套调用。()

A:错B:对

答案:对C语言的源程序中必须包含库函数。()

A:对B:错

答案:错在C程序中,函数调用不能出现在表达式语句中。()

A:错B:对

答案:错在C函数中,形参可以是变量、常量或表达式。()

A:对B:错

答案:错

项目七单元测试

设有以下语句,叙述正确的是()

typedefstruct

{intn:

Charch[8]:

}PER;

A:typedefstruct是结构体类型B:PER是结构体的类型名C:struct是结构体类型名D:PER是结构体的变量名

答案:PER是结构体的类型名对结构体变量person的出生年月份进行赋值时,正确的赋值语句是()

Structdate

{intyear;intmonth;intday;

};

Structworklist

{charname[20];charsex;structdatebirthday;

}person;

A:person.year=1958;B:person.birthday.Year=1958;C:year=1958;D:birthday.year=1958;

答案:person.birthday.Year=1958;以下叙述中错误的选项是()

A:结构体类型数据由多个成员构成,这些成员的类型可以不同,他们共同描述一个对象B:C语言中,结构体类型与结构体变量的含义一样,都可以用来存放数据C:在程序设计中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量D:C语言中,结构体的成员可以是一维数组或多维数组

答案:C语言中,结构体类型与结构体变量的含义一样,都可以用来存放数据以下结构体类型变量的定义中,不正确的是()

A:struct

{intn;

floatm;

}aa;B:typedefstructaa{intn;

Floatm;}AA;AAtdl;C:struct{intn;

Floatm;}aa;struct

aatdl;D:structaa{intn;Floatm;}tdl;

答案:struct{intn;

Floatm;}aa;struct

aatdl;有程序段structdate{intx,y;}test={10,20},test2;则以下赋值语句中错误的是()

A:test2,x=test1,y;B:test2={30,40};C:test2=test1;D:test2,x=test1,x;

答案:test2={30,40};结构体mn共有几个成员()

structst

{floata;intb;}c;

structmn

{structststul;intd;chare;}

A:6B:3C:4D:5

答案:4以下结构体类型说明和变量定义中,正确的是()

A:struct{charflag;floatx;}ss;

ssa,b;B:structss{charflag;floatx;};structssa,b;C:typedef{charflag;floatx;}ss;

ssa,b;D:structss{charflag;floatx;}structssa,b;

答案:structss{charflag;floatx;};structssa,b;若有定义,则叙述错误的是()

structteacher{intnum;charsex;intage;}teacher1;

A:num、sex、age都是结构变量teacher1的成员B:teacher是结构类型名C:struct是结构类型的关键字D:structteacher是用户定义的结构类型

答案:teacher是结构类型名若有定义,则变量dl的长度是()

structdata{chara;floatb[3];longc;}dl;

A:12B:15C:17D:4

答案:17若有以下程序段,则输出结果为()

structc

{intx;inty;}s[2]={1,3,2,7};

main()

{printf(“%d”,s[0].x*s[1].y);}

A:7B:4C:21D:6

答案:7

项目八单元测试

有以下语句,若要实现指针p指向变量m,正确的语句是()

intm,*p;

A:p=m;B:p=&m;C:m=&p;D:m=p;

答案:p=&m;有以下

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论