2021春计算机语言程序设计GR041002学习通超星期末考试答案章节答案2024年_第1页
2021春计算机语言程序设计GR041002学习通超星期末考试答案章节答案2024年_第2页
2021春计算机语言程序设计GR041002学习通超星期末考试答案章节答案2024年_第3页
2021春计算机语言程序设计GR041002学习通超星期末考试答案章节答案2024年_第4页
免费预览已结束,剩余6页可下载查看

付费下载

下载本文档

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

文档简介

2021春计算机语言程序设计GR041002学习通超星期末考试章节答案2024年斐波那契(Fibonacci)数列的第一项和第二项是1,后面每一项是前两项之和。函数递归定义如下:intfib(intn){

inty;

if(n==1||n==2)

】;

elsey=【

】+fib(n-2);

returny;}

答案:y=1;fib(n-1函数是有函数头和

【】。

答案:函数体阅读下面的程序,写出程序的输出结果:#includeusingnamespacestd;

intmain()

{

inta,b,c;

a=10;b=20;c=30;

if(a>b)

a=b;

b=c;

c=a;

cout<答案:10,30,10某公司员工的周工资计算方法:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按工龄分为新老职工,5年以下的为新职工,新职工的正常工资为30/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。(参考程序员的编写风格,前后对照书写答案,答案唯一)

#include#includeusingnamespacestd;

intmain()

{

doublewwage;

inthour,year;

cin>>year>>hour;

if(【

1】)

if(hour>40)

//加班

wwage=【

2

】;

else

//没加班

wwage=hour*30;

else

//老职工

if(hour>40)

//加班

wwage=40*50+(hour-40)*50*1.5;

else

//没加班

wwage=hour*50;

cout<答案:year<5;40*30+(hour-40阅读下面的程序,写出程序的输出结果。

#include

usingnamespacestd;

intmain()

{

inta,b,c;

a=2;b=3;c=1;

if(a>b)

if(a>c)

cout<<”a:”<答案:c:1输入一个同学的成绩,输出相应的等级A-E。

#includeusingnamespacestd;

intmain()

{

intscore;

cin>>score;

//输入100以内分数

switch(【

1

】)

{

case100:

case90:cout<<"A\n";break;

case80:cout<<"B\n";break;

case70:cout<<"C\n";break;

case60:cout<<"D\n";break;

//以下不及格输出E

2

】:cout<<"E\n";

}

return0;

}

答案:score-score%10;score/10*10;score*10/100*10;default某个自动加油站有‘A’,‘B’,‘C’三种汽油,单价分别为1.50,1.35,1.18(元/千克),也提供了“自己加”或“协助加”两个服务等级,这样用户可以得到5%或10%的优惠。本程序针对用户输入:加油量a,汽油品种b服务类型c(‘F’—自动,‘M’—自己,‘E’—协助),输出应付款m。请在每个【

】内填入正确内容。

usingnamespacestd;

intmain()

{

floata,r1,r2,m;

charb,c;

cin>>a>>b>>c;

switch(b)

{

case'A':r1=1.5;break;

case'B':【

1

】;break;

case'C':r1=1.18;

}

switch(c)

{

case'F':r2=0;break;

case'M':r2=0.05;break;

case'E':【

2

】;

}

3

】;//按照顺序书写付钱=数量*单价*折扣

cout<答案:r1=1.35;r2=0.1;m=a*r1*(1-r2某服装店经营套服,也单件出售。若买的不少于50套,每套80元;不足50套的每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款m。请在每个【

】内填入正确内容。(注明:遵循程序员的编程风格,前后对照,后面答案唯一)#includeusingnamespacestd;intmain(){

intc,t,m;

cout<<"inputthenumberofcoatandtrousersyourwantbuy:\n";

cin>>c>>t;

//后面表达式如果c和t同时存在时,c在前

if(【

1

】)

//成套服装

if(c>=50)m=c*80;

elsem=c*90;

elseif(【

2

)

if(t>=50)m=t*80+(c-t)*60;

elsem=t*90+(c-t)*60;

else

if(c>50)【

3

】;

elsem=c*90+(t-c)*45;

cout<答案:c==t;c>t;m=c*80+(t-c当inta=3,b=2,c=1,f时,表达式f=a>b>c的值是【

】。

答案:0下面程序的运行结果是。#includeusing

namespace

std;int

main(){

char

c='a';

if('0'<=c<='9')

cout<<"YES";

else

cout<<"NO";

return

0;}

答案:YES假定所有变量均已正确说明,则下面程序段运行后x的值是【

】。

inta=b=c=0;x=35;

if(!a)x=-1;

elseif(b);

if(c)x=3;

elsex=4;

答案:4多重if-else语句嵌套使用时,寻找与else配对的if方法是【

】。

答案:其上最近的未配对的if已知:inta=4,b=5,c;

则执行表达式c=a=a>b后,变量a的值为【】。

答案:0有多项式-4x3+3.6x2+1.7x-2.8,

输入x的值,输出多项式的值,结果保留小数点后边两位有效数字。(提示:若要对实型变量a保留两位有效数字,可以采用表达式(int)(a*100+0.5)/100.0实现).#includeusingnamespacestd;

intmain()

{

doublex,y;

cin>>x;

y=-4*x*x*x+【1】+1.7*x-2.8;

cout<<”y=”<<【2】<答案:3.6*x*x;x*x*3.6;(int下列程序的输出结果是【】。#includeusingnamespacestd;

intmain()

{

inti,j;cout<<"Enterij:";

cin>>i>>j;cout<<"i+j="<答案:i+j=14,i*j=45C++语言编译程序的首要工作是【】。

答案:检查C++语言程序的语法错误

在C++语言中,每个语句和数据定义是用【】结束。

答案:分号下面关于C++语言注释的描述中,正确的是【】。

答案:以“/*”开始,以“*/”结束的块式注释下列选项中,全部都是C++合法用户标识符的是【】。

答案:a3_b3

_123

YNC++语言规定,必须用【】作为主函数名。

答案:

main若已定义x和y为double类型,则表达式x=1,y=x+3/2的值为【】。

答案:2.0下面语句执行后的输出结果是【】。

cout<<(int)(3.6+3.0)/3<答案:2计算机高级语言程序设计的三种基本结构是

答案:顺序结构、选择结构、循环结构编写C或C++高级语言程序一般需要经过的步骤依次是

答案:编辑、编译、连接、运行标准C++语言的源程序的文件名的扩展名是

答案:cpp把源程序文件翻译转换成目标文件的过程叫做

答案:编译引用C++语言标准库函数,一般要用预处理命令将其头文件包含进来,写法是#

答案:include高级语言编写的程序相比机器语言编写的特点是

答案:可读性好,语法更接近自然语言输入两个正整数x、y,将其合并成一个正整数t。合并的方式是:将x的十位和个位数字放在t的个位和百位上,将y的十位和个位数字放在t的十位和千位上。例如x=56,y=23合并后t=3625,那么t的表达式为:t=y%10*1000+【1】+y/10%10*10+【2】

(提示:输入的两个正整数可能不是两位数,多位数取低两位,比如y的十位数:y/10%10)

答案:x%10*100;x/10%10一个C/C++源程序至少包含一个主函数,即【】函数

答案:main在C/C++语言中,每个语句和数据定义是用【】结束。

答案:分号以下程序的输出结果是【】。

intmain()

{

inti=10,j=10;

cout<答案:10,11设有intx=11,则表达式(x++*1/2)的值为【】。

答案:5一个C/C++程序可以包含任意多个不同名的函数,但是有且仅有一个【】。

答案:主函数若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是【】。

答案:(exp!=0)设有:inta=1,b=2,c=3,d=4,m=2,n=2;;执行(m=a>b)&&(n=c>d)后n的值为【】。

答案:2若希望当变量a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是【】。

答案:

!(a%2)以下关于运算符优先顺序的描述中正确的是【】。

答案:赋值运算符判断字符型变量ch为大写字母的表达式是【】。

答案:(ch>='A')&&(ch<='Z')能正确表示x的取值范围在[0,100]或[-10,-5]内的表达式是【】。

答案:(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)逻辑运算符运算对象的数据类型【】。

答案:任何类型的数据当x=0时,表达式!x||x的值为【】。

答案:1能正确表示a和b同时为正或同时为负的表达式是【】。

答案:a*b>0设x,y,z,t为int型变量,则执行以下语句后,t的值为【】。x=y=z=1;t=++x||++y&&++z;

答案:1表达式10!=8的值为【】。

答案:1为表示关系x>=y>=z,下面C语言表达式中正确的是【】。

答案:(x>=y)&&(y>=z)已知i=0,j=1,k=2,则逻辑表达式++i||--j&&++k的值为【】。

答案:1若有以下变量定义:floatx;inta,b;,则正确的switch语句是【】。

答案:switch(a+b){case1:printf("*\n");

case1+2:printf("**\n");}假定所有变量均已正确说明,则下面程序段运行后x的值是【】a=b=c=0;x=35;if(!a)x=-1;elseif(b);if(c)x=3;elsex=4;

答案:4下面程序段执行后,x、y、z的值是【】。intx=10,y=20,z=30;if(x>y)

z=x;x=y;y=z;

答案:x=20,y=30,z=30以下程序段的运行结果是【】。intx=5,a=0,b=0;if(x=a+b)

cout<<"****\n";else

cout<<"####\n";

答案:输出以下if语句书写正确的是【】。

答案:

if(x>0){x=x+1;printf("%f",x);}elseprintf("%f",-x);以下程序段的输出结果是【】。

inta=1,b=1;

switch(a+b)

{

case1,2:cout<<"*\n";

case3:cout<<"**\n";

}

答案:***对if语句中表达式的类型,下面正确的说法是【】。

答案:可以是任意表达式

多重if_else语句嵌套使用时,寻找与else配套的if方法是()

答案:其上最近的未配对的if若要求在if语句后一对圆括号中表示a不等于0的关系,能正确表达这一关系的是【】。

答案:a下列关于开关语句的描述中,错误的是()。

答案:开关语句中,case子句的语句序列中一定要有break语句下列关于条件语句的描述中,错误的是【】。

答案:if语句中elseif子句和else子句的顺序是没有限制的下面程序的运行结果是【】。voidmain(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1)cout<答案:2

1下面程序的运行结果是【】。voidmain(){charc='a';if('0'<=c<='9')printf("YES");elseprintf("NO");}

答案:YES在下列条件语句中,只有一个语句在功能上与其它三个语句不等价(其中s1、s2表示某条语句),这个不等价的语句是【】。

答案:if(a==1)s1;

elses2;已知charch;则判断ch为大写字母的表达式,下面书写不正确的是【】。

答案:(ch>=65)&&(ch<=122)if-else语句嵌套使用时,C/C++语言规定,else总是与【】配对。

答案:其前面最近的未配对的if假设有如下的程序片段,若grade的值为'C',则输出结果是【

】。switch(grade){

case'A':cout<<"GREAT!";

case'B':cout<<"GOOD!";

case'C':cout<<"OK!";

case'D':cout<<"NO!";

default:cout<<"ERROR!";}

答案:OK!NO!ERROR!下面程序的输出结果是【】。voidmain(){

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

switch(x)

{

case1:

switch(y)

{

case0:a++;

case1:b++;break;

}

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

}

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

答案:a=2,b=2若运行时输入2.0,则下面程序的输出结果是【】。voidmain(){

floata,b;

cin>>a;

if(a<0.0)b=0.0;

elseif((a<0.5)&&(a!=2.0))b=1.0/(a+2.0);

elseif(a<10.0)b=1.0/a;

elseb=10.0;

printf("%f\n",b);}

答案:0.500000在一个被调用函数中,关于return语句使用的描述错误的是【】。

答案:一个函数中有且仅有一条return语句。以下叙述中不正确的是【】。

答案:函数必须有返回值以下正确的描述是:在C++语言程序中【】。

答案:函数的定义不可以嵌套,但函数的调用可以嵌套下列函数调用中,不正确的是______。

答案:max(inta,intb);以下错误的描述是:函数调用可以【】

答案:做为一个函数的形参若定义一个函数的返回类型为void,以下叙述正确的是【

答案:函数本身没有返回值??下面正确的函数声明形式是【】

答案:voidFunction(int);C++语言允许函数类型缺省定义,此时函数值隐含的类型是【】。

答案:int型以下正确的说法是(【】

答案:如果函数值的类型与返回值类型不一致,以函数值类型为准以下正确的函数声明形式是【】

答案:doublefun(intx,inty);下列正确的说法是:在C++语言的函数中,【】

答案:可以有也可以没有形参下面程序的输出结果是【】

inta=3;

main()

{

ints=0;

{

inta=5;

s+=a++;

}

s+=a++;

cout<答案:8以下程序运行后,输出结果是【】

intd=1;

fun(intp)

{

intd=5;

d+=p++;

cout<答案:84以下程序的输出结果是:

fun(intk)

{

if(k>0)

fun(k-1);

cout<答案:012345当下面的程序运行后,变量c的值为【】。

intmax(intx,inty)

{intz;

if(x>y)z=x;

elsez=y;

return(z);

}

main()

{inta=45,b=27,c=0;

c=max(a,b);

}

答案:45下面程序的运行结果为:

voidfun(inta,intb,intc)

{

a=456;b=567;c=678;}

main()

{intx=10,y=20,z=30;

fun(x,y,z);

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

}

答案:10,20,30以下程序的输出结果是

fun(intx,inty)

{return(x+y);}

main(){inta=2,b=5,c=8;

cout<答案:9函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数是【】

答案:2下列的描述中错误的是.【】

答案:局部变量可以初始化,若不初始化,则系统默认它的值为0以下叙述中不正确的是【】

答案:在C++的函数中,最好使用全局变量下列说法中错误的是【】

答案:在一个函数的复合语句中定义的变量只在本函数范围内有效下面说法中正确的是【】如果在一个函数中的复合函数语句中定义了一个变量,则该变量

答案:只在该复合语句中有效简单变量作实参时,它和对应形参之间的数据传递方式是【】。

答案:单向值传递以下正确的说法是:在C++语言中【】

答案:实参和与其对应的形参各占用独立的存储单元所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数。例如153=1*1*1+5*5*5+3*3*3。以下函数用于判断参数n是否是水仙花数,若为水仙花数,函数返回true,否则返回false。请填空。#includeusingnamespacestd;boolfun(intn){inta,b,c;

a=【】;

b=n/10%10;

c=n/100;

if(n==a*a*a+b*b*b+c*c*c)

returntrue;

else

return【】;}intmain(){

intnum;

cout<<"输入一个三位正整数:";

cin>>num;

if(【】)

cout<答案:n%10;false;fun(num以下函数的功能是求三个整型参数中的最小数。请填空。intmin(inta,intb,intc){

intmin;

min=(a答案:min以下程序的功能是用递归方法计算学生的年龄,已知第一位学生年龄最小,为10岁,其余学生一个比一个大2岁,求第五个学生的年龄。请填空。#includeage(intn){

int

c;

if(n==1)

c=10;

elsec=【1】;

returnc;}main(){

intn=5;

printf("age:%d\n",【2】);}

答案:age(n-1;age(5下列设置函数参数默认值的说明语句中,错误的是【】

答案:intfun(intx=5,inty);以下叙述中正确的是【】

答案:使用const定义的常量名有类型之分,其值在程序运行时是不可改变的以下正确的描述是【】。

答案:设置参数的默认值时,应该设置右边的参数下列选择重载函数的不同实现的判断条件中,错误的是【】。

答案:函数返回值不同函数重载是指【】。

答案:两个或两个以上的函数取相同的函数名,但形参的个数或类型不同。当输入为“quert?”时,下面程序的执行结果是【】#includemain(){charc;while((c=getchar())!='?')

putchar(++c);}

答案:rvfsu以下描述中正确的是【】。

答案:在do-while循环一定要有能使while后面表达式的值变为0(假)的操作C语言中while和do-while循环的主要区别是【】。

答案:do-while的循环体至少无条件执行一次若运行以下程序,从键盘输入2437,则以下程序段的输出结果是【】。charc;while((c=getchar())!='\n')

switch(c-'2'){

case0:

case1:putchar(c+4);

case2:putchar(c+4);break;

case3:putchar(c+3);

default:putchar(c+2);break;}

答案:668779若执行下列程序段,则下面描述中正确的是【】。intk=5;

while(k=1)k++;

答案:死循环语句while(!e==0);什么时候将陷入死循环?

答案:e!=0下面程序段的输出结果是【】。intx=3;do{

cout<<(x-=2)<<"";}while(--x);

答案:1程序段如下,则正确的执行结果是【】。intk=0;

while(k++<=2);cout<答案:4程序段如下,则正确的执行结果是【】。intk=0;

while(k++<=2)

cout<答案:1

2

3程序段如下,则下面说法中正确的是【】。

intk=20;

while(k=0)

k=k+1;

答案:循环体语句一次也不执行执行语句for(i=1;i++<4;);之后,变量i的值为【】。

答案:5若i为整型变量,则以下循环的执行次数是【】。for(i=2;i==0;)

cout<<(i--);;

答案:0下面有关for循环的正确描述是【】。

答案:for循环的循环体可以包含多条语句,但必须用花括号括起来执行程序段,则下面说法中正确的是【】。x=-1;do{x=x*x;}while(!x);

答案:循环执行1次以下各循环语句中,不是无限循环的是【】

答案:for(i=0;i;i++)

cout<在下列程序中,while循环的循环次数是【】。inti=0;while(i<10){

if(i<1)

continue;

if(i==5)

break;

i++;}

答案:死循环、不能确定次数若i,j已定义为int型,则以下程序段中循环体的总的执行次数是【】(假定循环体内不改变i和j的值)for(i=5;i;i--)

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

{...

...}

答案:20在C语言的循环语句for,while,dowhile中,用于直接中断内层循环的语

温馨提示

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

评论

0/150

提交评论