程序设计基础 C语言智慧树知到答案章节测试2023年温州理工学院_第1页
程序设计基础 C语言智慧树知到答案章节测试2023年温州理工学院_第2页
程序设计基础 C语言智慧树知到答案章节测试2023年温州理工学院_第3页
程序设计基础 C语言智慧树知到答案章节测试2023年温州理工学院_第4页
免费预览已结束,剩余6页可下载查看

下载本文档

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

文档简介

第一章测试以下哪个叙述是不正确的编程风格()。

A:大小写字母用在不同场合,一般除了符号名和常量名用大写字母外,其它一律用小写字母

B:使用有意义的标志符

C:程序中的注释可有可无

D:使用括号来改善表达式的清晰度

答案:CC语言程序的执行,总是起始于()。

A:程序中的第一个函数

B:main函数

C:包含文件中的第一个函数

D:程序中的第一条可执行语句

答案:B以下叙述中正确的是()

A:用C程序实现的算法可以没有输入但必须要有输出

B:用C程序实现的算法可以没有输出但必须要有输入

C:用C程序实现的算法必须要有输入和输出操作

D:用C程序实现的算法可以既没有输入也没有输出

答案:D下面对C语言特点,不正确描述的是()。

A:C语言是一种结构式模块化程序设计语言

B:C语言既可以用来编写应用程序,又可以用来编写系统程序

C:C语言兼有高级语言和低级语言的双重特点,执行效率高

D:C语言的可移植性较差

答案:D以下叙述正确的是()

A:在C程序中,main函数可有可无

B:C程序的每行中只能写一条语句

C:C语言本身没有输入输出语句

D:在对一个C程序进行编译的过程中,可发现注释中的拼写错误

答案:CC语言中规定:在一个源程序中main函数的位置()。

A:可以任意

B:必须在系统调用的库函数的后面

C:必须在最后

D:必须在最开始

答案:Aa,b均为整数,且b!=0,则表达式a/b*b+a%b的值是()

A:a被b除的商的整数部分

B:b

C:a被b除的整数部分

D:a

答案:D设有以下语句:intx=10;x+=3+x%(-3),则x的值是()

A:15

B:14

C:11

D:12

答案:B设x为int型变量,则执行语句x=10和x+=x-=x-x后,x的值为()

A:10

B:40

C:30

D:20

答案:Dmain(){inta=12,b=12;printf(“%d,%d”,–a,++b);}以上程序的输出结果是:()

A:11,10

B:11,13

C:12,12

D:10,10

答案:B阅读下面的程序main(){inti,j;scanf(“%3d%2d”,&i,&j);printf(“i=%d,j=%d”,i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是()

A:i=123,j=45

B:i=1,j=2

C:i=123,j=4567

D:i=1234,j=567

答案:A表达式pow(2.8,srt(double())值的数据类型为int()

A:错

B:对

答案:A假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是8()

A:对

B:错

答案:A’aBS’是非法常量()

A:对

B:错

答案:AC语言中运行’a’+1,所显示的值为97()

A:对

B:错

答案:BC语言中%c用于输出字符型数据()

A:错

B:对

答案:B第二章测试#include<stdio.h>intmain(){intsum=0;printf(“符号在后自增:%d”,sum++);printf(“符号在前自增:%d”,++sum);return0;}程序代码中包含了选择结构()

A:错

B:对

答案:A经过以下语句定义后,表达式z+=x>y?++x:++y()。intx=1,y=2,z=3;

A:2

B:6

C:3

D:5

答案:B执行以inta=10;printf(“%d”,a++);后的输出结果和a的值是()。

A:10和10

B:10和11

C:11和11

D:11和10

答案:B若变量已正确定义并赋值,下面符合c语言语法的表达式是()。

A:a=a+7=c+b

B:a=b=c+2

C:a:=b+1

D:int18.5%3

答案:B若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为()。

A:10

B:7

C:8

D:9

答案:C若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后a的值为()。

A:6

B:-12

C:9

D:-3

答案:B可以用只带有一个printf()函数的输出语句同时输出多个整型和字符型数据。()

A:对

B:错

答案:Acharc1=“abc”;putchar(c1);可以输出整个字符串“abc”。()

A:对

B:错

答案:Bmain(){charc1=97,c2=98;printf(“%d%c”,c1,c2);}上面程序的输出结果是()。

A:97b

B:a98

C:9798

D:ab

答案:A语句printf(“a’hi’y\”;的输出结果是(说明:’是退格符)()。

A:re’hi’you

B:are’hi’you

C:are’hi’you

D:abre’hi’you

答案:Aintx=3,y=2;printf(“%d”,(x-=y,x*=y+8/5));上面程序段的输出结果为()。

A:7

B:1

C:5

D:3

答案:Dprintf(“%d”,(int)(2.5+3.0)/3);上面语句的输出结果是()。

A:2

B:0

C:有语法错误不能通过编译

D:1

答案:D第三章测试在if语句中,条件判断表达式不一定需要用括号括起来,在语句之后必须加分号。()

A:对

B:错

答案:Bif语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。在}之后能再加分号。()

A:错

B:对

答案:A一个if语句内不能出现两次及两次以上的else()

A:错

B:对

答案:A关于switch语句,break语句是语句中必须的一部分()。

A:错

B:对

答案:A关于switch语句的说法正确的是()。

A:switch语句的每个case分支中只能设置一个语句。

B:switch语句中default分支是可选的。

C:switch语句后边的圆括号可以省略。

D:switch语句中各个case分支顺序没有规定,但是default分支必须处在所有case分支之后,否则会影响程序执行效果。

答案:B第四章测试下面有关for循环的正确描述是()

A:for循环只能用于循环次数已经确定的情况for

B:循环是先执行循环体语句,后判断表达式

C:for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

D:在for循环中,不能用break语句跳出循环体

答案:C对for(表达式1;;表达式3)可理解为()

A:for(表达式1;0;表达式3)

B:for(表达式1;表达式1;表达式3

C:for(表达式1;1;表达式3)

D:for(表达式1;表达式3;表达式3)

答案:CX=5;do{y=x–;if(!y){printf(“”);continue;}printf(“#”);}while(3<=x<=4);以上程序段运行的结果是()

A:死循环

B:###

C:##

D:输出错误信息

答案:A设有程序段:intk=10;while(k=0)k=k-1;则下面描述中正确的是()

A:循环体语句一次也不执行

B:循环体语句执行一次

C:无限循环

D:循环执行10次

答案:Acharc[]=“abc”;inti=0;do{}while(c[i++]!=‘’);printf(“%d”,i-1);以上程序段的输出结果为()

A:ab

B:2

C:3

D:abc

答案:C语句while(!E);中的表达式!E等价于()

A:E==0

B:E==1

C:E!=1

D:E!=0

答案:Abreak和continue语句用法几乎一样,只能用在循环结构中()

A:对

B:错

答案:B关于break和continue语句,以下选项正确的是()。

A:continue语句结束循环后继续执行循环语句的后续语句

B:break语句结束循环后继续执行循环语句的后续语句

C:continue语句在for循环和while循环中都可以使用

D:break语句只作用于语句所在层循环

答案:BCDfor(y=1;y<10;)y=((x=3*y,x+1),x-1);printf(“x=%d,y=%d”,x,y);上面程序段的运行结果是:()

A:x=y=27

B:x=12,y=13

C:x=15,y=14

D:x=27,y=27

答案:C执行语句for(i=1;i<4;)i++;后变量i的值是()

A:3

B:4

C:不定

D:5

答案:B第五章测试sqrt()函数与pow()函数类似,再调用sqrt()函数前我们需要做什么准备()。

A:定义函数doublesqrt;

B:不需要多做准备

C:调用库#include<math>

D:调用库#include<math.h>

答案:D被调函数的实参与形参的相同点正确的有()。

A:两者的变量类型必定相同

B:两者的地址必定相同

C:两者的变量名称必定相同

D:两者的值必定相同

答案:AD函数必须有返回值。()

A:对

B:错

答案:B在使用函数的嵌套调用时,被调用的函数必须要有返回值。()

A:对

B:错

答案:B提前声明sum函数,以下代码正确的有:()

A:sum(inta,intb){};

B:doublesum(doublea,doubleb){};

C:doublesum(doublea,doubleb);

D:intsum(int,int)

答案:C以下代码中,正确的是:()

A:intsum(inta,intb){a+b;}intcal(intn){returnsum(n,n+1);}

B:intsum(inta){returna+b;}intcal(intn){returnsum(n,n+1);}

C:intsum(inta,intb){returna+b;}intcal(intn){returnsum(n,n+1);}

D:intsum(inta,intb){returna+b;}intcal(intn){returnsum(n);}

答案:C在自定义函数中调用其它函数与在主函数中调用其它函数语法格式是相同的。()

A:错

B:对

答案:B递归调用的基本思想就是自己调用自己,一个使用递归技术的方法将直接或间接地调用自身的方法。()

A:对

B:错

答案:A一个递归的定义可以用递归过程求解,也可以用非递归过程求解,但单从运行时间来看,通常递归过程比非递归过程()

A:相同

B:无法确定

C:较快

D:较慢

答案:D下列关于函数递归调用描述不正确的是()。

A:向上携带返回表达式的过程被称为是“回溯过程”

B:向下的递归调用过程被称为是“递归过程”

C:函数的递归调用就是函数对自身的调用

D:递归过程必须解决的问题有三个

答案:D一个递归的定义可以用递归的过程求解,通常递归的执行过程是()的。

A:低质量

B:高效

C:高质量

D:低效

答案:D关于方法的递归,一下说法正确的是()。

A:方法递归是指方法的返回值不同

B:说法都不对

C:方法递归其实就是调用其他方法

D:方法递归就是指在一个方法的内部调用自身的过程

答案:D第六章测试定义数组inta[5]={0},最后一个0的索引下标是多少()

A:0

B:4

C:-1

D:5

答案:B有如下语句inta[10]={1,2,3,4,5,6,7,8,9,10};intp=a;则数值为9的表达式是()。

A:p+9

B:p+=9

C:(p+8)

D:P+7

答案:C下列关于数组说话正确的是()

A:数组的大小是固定的,但可以有不同的类型的数组元素

B:数组的大小是可变的,但所有数组元素的类型必须相同

C:数组的大小是固定的,所有数组元素的类型必须相同

D:数组的大小是可变的,可以有不同的类型的数组元素

答案:C下列4个数组定义中,错误的为()

A:Intn,d[n]

B:Inta[7]

C:Charc[5]

D:#defineN5longb[N];

答案:A在数组中,数组名表示()。

A:数组第1个元素的首地址

B:数组最后1个元素的首地址

C:数组所有元素的首地址

D:数组第2个元素的首地址

答案:A合法的数组定义是()。

A:chara=“string”;

B:chara[]={0,1,2,3,4,5}

C:inta[5]={0,1,2,3,4,5};

D:chara[]=“string”;

答案:DintN=5,b[N][N]正确定义了数组。()

A:对

B:错

温馨提示

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

评论

0/150

提交评论