C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院_第1页
C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院_第2页
C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院_第3页
C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院_第4页
C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院_第5页
免费预览已结束,剩余7页可下载查看

下载本文档

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

文档简介

C语言程序设计知到智慧树章节测试课后答案2024年秋柳州工学院第一章单元测试

以下叙述正确的是()。

A:在对一个C程序进行编译的过程中,可发现注释中的拼写错误B:C语言本身没有输入输出语句C:在C程序中,main函数必须位于程序的最前面D:C程序的每行中只能写一条语句

答案:C语言本身没有输入输出语句C语言规定:在一个源程序中,main函数的位置()。

A:必须在程序的最后B:必须在系统调用的库函数的后面C:必须在程序的开头D:可以在程序的任意位置

答案:可以在程序的任意位置一个C语言程序是由()。

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

答案:函数组成以下4组选项中,均为不合法的标识符是()。

A:float,la0,_AB:_123,temp,INTC:b-a,goto,intD:A,P_0,do

答案:b-a,goto,int以下叙述不正确的是()。

A:一个C源程序可由一个或多个函数组成B:在C程序中,注释说明只能位于一条语句的后面C:一个C源程序必须包含一个main函数D:C程序的基本组成单位是函数

答案:在C程序中,注释说明只能位于一条语句的后面

第二章单元测试

在C语言中,退格符是()。

A:\tB:\bC:\nD:\f

答案:\b执行下列语句intf=3,g,h;g=++f;g=f++;h=++g;后f和h的值是()。

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

答案:5和5执行以下程序段后,c3的值为()。

intc1=1,c2=2,c3;

c3=1.0/c2*c1;

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

答案:0设以下变量均为int类型,则值不等于7的表达式是()。

A:(x=y=6,x+y,x+1)B:(x=y=6,x+y,y+1)C:(y=6,y+1,x=y,x+1)D:(x=6,x+1,y=6,x+y)

答案:(x=6,x+1,y=6,x+y)下面能正确表示“整数x的绝对值大于等于5”的C语言表达式是()。

A:abs(x)≥5B:abs(int(x))>=5C:abs(x)>=5D:x≥5

答案:abs(x)>=5

第三章单元测试

已知字母A的ASCII码为十进制的65,下面程序的输出是()。

#include<stdio.h>

voidmain()

{charch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

printf("%d,%c\n",ch1,ch2);}

A:C,DB:不确定的值C:67,DD:B,C

答案:67,D下面程序的输出是()。

#include<stdio.h>

voidmain()

{intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}

A:k=11,k=13,k=13B:k=11,k=13,k=bC:k=11,k=12,k=11D:k=11,k=013,k=0xb

答案:k=11,k=13,k=b语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是()。

A:a\bre\'hi\'y\\\bouB:abre'hi'y\bouC:a\bre\'hi\'y\bouD:re'hi'you

答案:re'hi'you已知ch是字符型变量,下面正确的赋值语句是()。

A:ch=‘\0’;B:ch=5+9;C:ch=‘a+b’;D:ch=‘7’+‘9’;

答案:ch=‘\0’;下列程序执行后的输出结果是()。

#include<stdio.h>

voidmain()

{charx=0xFFFF;printf("%d\n",x--);}

A:-32767B:–32768C:-1D:FFFE

答案:-1

第四章单元测试

有如下程序

#include<stdio.h>

intmain()

{

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

if(a<b)

{if(b<c)c=0;}

elsec+=1;

printf("%d\n",c);

return0;

}

执行后结果是()。

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

答案:3若有如下语句

intx=3;

do{printf("%d\n",x-=2);}while(!(--x));

则上面程序段()。

A:输出的是3和0B:输出的是1和-2C:输出的是1D:是死循环

答案:输出的是1和-2下面程序的运行结果是()。

#include<stdio.h>

voidmain()

{inty=10;

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

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

}

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

答案:0以下正确的描述是()。

A:从多层循环嵌套中退出时,只能使用goto语句B:continue语句的作用是结束整个循环的执行C:只能在循环体内和switch语句体内使用break语句D:在循环体内使用break语句或continue语句的作用相同

答案:只能在循环体内和switch语句体内使用break语句有如下程序:

#include<stdio.h>

voidmain()

{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=2B:a=1,b=0C:a=1,b=1D:a=2,b=1

答案:a=2,b=1

第五章单元测试

以下关于数组的描述正确的是()。

A:数组的大小是固定的,所有数组元素的类型必须相同B:数组的大小是可变的,可以有不同的类型的数组元素C:数组的大小是可变的,但所有数组元素的类型必须相同D:数组的大小是固定的,但可以有不同的类型的数组元素

答案:数组的大小是固定的,所有数组元素的类型必须相同以下程序段给数组所有的元素输入数据,请选择正确答案填入()。

#include<stdio.h>

voidmain()

{

inta[10],i=0;

while(i<10)scanf("%d",________);

}

A:a+(i++)B:a+iC:&a[++i]D:&a[i+1]

答案:a+(i++)有以下程序

#include<stdio.h>

voidmain()

{

inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

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

for(j=0;j<=i;j++)s+=a[i][j];

printf("%d\n",s);

}

该程序的输出结果是()。

A:18B:19C:20D:21

答案:18以下程序运行后输出结果是()。

#include<stdio.h>

voidmain()

{

intn[3],i,j,k;

for(i=0;i<3;i++)

n[i]=0;

k=2;

for(i=0;i<k;i++)

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

n[j]=n[i]+1;

printf("%d\n",n[1]);

}

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

答案:3在定义intn[5][6]后第10个元素是()。

A:n[2][5]B:n[1][3]C:n[2][4]D:n[1][4]

答案:n[1][3]

第六章单元测试

下列说法不正确的是()。

A:在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效B:主函数main中定义的变量在整个文件或程序中有效C:不同函数中,可以使用相同名字的变量D:形式参数是局部变量

答案:主函数main中定义的变量在整个文件或程序中有效下列哪种数据不存放在动态存储区中()。

A:函数形参变量B:局部自动变量C:函数调用时的现场保护和返回地址D:局部静态变量

答案:局部静态变量若有以下程序

#include<stdio.h>

voidf(intn);

main()

{

voidf(intn);

f(5);

}

voidf(intn)

{

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

}

则以下叙述中不正确的是()。

A:对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明B:若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fC:函数f无返回值,所以可用void将其类型定义为无值型D:若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f

答案:对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明下列程序的运行结果是()。

main()

{

inti=3;

printf("%d,%d,%d\n",i,i++,i++);

}

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

答案:3,3,3有以下程序

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:9.0B:9C:21D:编译出错

答案:9

第七章单元测试

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

#include"stdio.h"

main()

{

chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;

printf("%d",*--p);

}

A:5B:非法C:a[4]的地址D:3

答案:5下列程序的输出结果是()。

#include"stdio.h"

main()

{

inta[]={1,2,3,4,5,6,7,8,9,0},*p;

p=a;

printf("%d\n",*p+9);

}

A:10B:0C:1D:9

答案:10若有说明语句:inta,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句“scanf("%d%d%d",&a,&b,&d);”。()

A:错B:对

答案:错若已定义inta=5;下面对(1)、(2)两个语句的正确解释是()。

(1)int*p=&a;(2)*p=a;

A:语句(1)和(2)中的*p含义相同,都表示给指针变量p赋值B:(2)变量a的值赋给指针变量pC:(1)在对p进行说明的同时进行初始化,使p指向a;a[4]的地址D:(2)将变量a的值赋予*p

答案:(1)在对p进行说明的同时进行初始化,使p指向a;a[4]的地址;(2)将变量a的值赋予*p设有如下的程序段:chars[]="girl",*t;t=s;则下列叙述错误的是()。

char*s="abcde";

s+=2;

printf("%d",s);

A:数组s中的内容和指针变量t中的内容不相等B:*t与s[0]相等C:s和t完全相同D:s数组长度和t所指向的字符串长度相等

答案:数组s中的内容和指针变量t中的内容不相等;s和t完全相同;s数组长度和t所指向的字符串长度相等

第八章单元测试

设有如下说明

typedefstructST

{longa;intb;charc[2];}NEW;

则下面叙述中正确的是()。

A:其他选项的说明形式非法B:NEW是一个结构体类型C:NEW是一个结构体变量D:ST是一个结构体类型

答案:NEW是一个结构体类型有以下说明和定义语句

structstudent

{intage;charnum[8];};

structstudentstu[3]={{20,"200401"},{21,"200402"},{19,"200403"}};

structstudent*p=stu;

以下选项中引用结构体变量成员的表达式错误的是()。

A:p->numB:stu[3].ageC:(*p).numD:(p++)->num

答案:stu[3].age设有以下语句

typedefstructS

{intg;charh;}T;

则可以用T定义结构体变量。()

A:对B:错

答案:对可以通过typedef增加新的类型。()

<spanstyle="font-family:-apple-system,"system-ui","SFProSC","SFProText","HelveticaNeue",Helvetica,"PingFangSC","SegoeUI",Roboto,"HiraginoSansGB",arial,"SourceHanSansCN",sans-serif;">

</span>

A:错B:对

答案:错以下对结构体类型变量td的定义中,正确的是(

)。

A:typedefstructaa{intn;floatm;}AA;AAtd;B:structaa{intn;floatm;};structaatd;C:struct{intn;floatm;}td;D:struct{intn;floatm;}aa;structaatd;

答案:typedefstructaa{intn;floatm;}AA;AAtd;;structaa{intn;floatm;};structaatd;;struct{intn;floatm;}td;

第九章单元测试

在C程序中,可把整型数以二进制形式存放到文件中的函数是()。

A:fprintf函数B:fwrite函数C:fputc函数D:fread函数

答案:fprintf函数以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是()。

A:feof(fp)B:C.fgetc(fp)C:B.ftell(fp)D:D.rewind(fp)

答案:D.rewind(fp)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件。()

A:错B:对

答案:对以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。

#include<stdio.h>

main()

{FILE*fout;charch;

fout=fopen('abc.txt',’w');

ch=fgetc(stdin);

while(ch!=’#’)

{fputc(ch,fout);

ch=fgetc(s

温馨提示

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

评论

0/150

提交评论