2020 C++程序设计(江苏科技大学) 最新满分章节测试答案
本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-02-27到2020-06-22
本篇答案更新状态:已完结
第8讲 函数 第8讲单元测验
1、 问题: 以下说法中正确的是__。
选项:
A:C/C++程序总是从源文件中第一个定义的函数开始执行
B: 在C/C++程序中,函数的定义必须写在调用该函数的语句之前
C:C/C++程序总是从main()函数开始执行
D:C/C++程序中的main()函数必须放在程序的开始部分
答案: 【C/C++程序总是从main()函数开始执行】
2、 问题:在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是__。
选项:
A:地址传递
B:单向值传递
C: 由实参传给形参,再由形参传回实参
D: 传递方式由用户指定
答案: 【单向值传递】
3、 问题:若有以下调用语句,则正确的fun函数首部是___。 main() { ∶ ∶ int a;float x; ∶ ∶ fun(x,a); ∶ ∶ }
选项:
A:int fun(int m,float x)
B:void fun(float a,int x)
C:void fun(int m,float x[])
D: int fun(int x,float a)
答案: 【void fun(float a,int x)】
4、 问题:若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是____。
选项:
A:3
B:4
C:5
D:6
答案: 【3】
5、 问题:若程序中定义函数float myadd(float a, float b){ return a+b;} 并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是______。
选项:
A:float myadd( float a,b);
B:float myadd(float b, float a);
C:float myadd(float, float);
D:float myadd(float a, float b);
答案: 【float myadd( float a,b);】
6、 问题:下面函数的功能是____。 sss(s,t) char s[ ],t[ ]; { int i=0; while( t[i]) { s[i]=t[i]; i++ ; } s[i]= ‘\0’; }
选项:
A:求字符串的长度
B:比较两个字符串的大小
C: 将字符串s复制到字符串t中
D:将字符串t复制到字符串s中
答案: 【将字符串t复制到字符串s中】
7、 问题:下面程序的输出结果是____。int func(int a,int b) { return(a+b); } main() { int x=2,y=5,z=9,r; r=func((x-y),z); cout<<r<<endl; }
选项:
A:10
B:12
C:6
D:16
答案: 【6】
8、 问题:对以下程序,正确的说法是__。#include "iostream"using namespace std;int sub (char x,char y){ int z; z=x%y; return z; }int main( ){ int g=5,h=3,k; k=sub(g,h); cout<<k<<endl; system("pause");return 0;}
选项:
A: 实参与其对应的形参类型不一致,程序不能运行
B: 被调函数缺少数据类型说明,程序不能运行
C: 主函数中缺少对被调函数的说明语句,程序不能运行
D:程序中没有错误,可以正常运行
答案: 【程序中没有错误,可以正常运行】
9、 问题:C/C++程序中的函数,既可以嵌套定义,也可以嵌套调用。
选项:
A:正确
B:错误
答案: 【错误】
10、 问题:函数调用时,实参将数据传递给形参后,立即释放原先占用的存储单元
选项:
A:正确
B:错误
答案: 【错误】
11、 问题:定义一个void型函数意味着调用该函数时,函数没有返回值
选项:
A:正确
B:错误
答案: 【正确】
12、 问题:数组作为函数的参数时,系统为形参数组和实参数组分配不同的存储单元。
选项:
A:正确
B:错误
答案: 【错误】
13、 问题:C/C++程序中,若函数的定义写在调用函数的语句之后,需要在调用前对函数进行说明。
选项:
A:正确
B:错误
答案: 【正确】
14、 问题:.以下函数的功能是:求x的y次方,程序中划线处应填入_#include "iostream"using namespace std;void fun(double x,int y,double z){int i;for(i=1,z=x;i<y;i++) z=z*x;}int main(){ double x=2, z;int y=3; _; cout<<z<<endl; system("pause");return 0;}
答案: 【fun(x,y,&z)】
15、 问题:以下程序可计算10名学生1门课成绩的平均分。划线处应填入__。#include "iostream"using namespace std; void average(float array[],int n){ int i=1; while(i<n) array[0]+=array[i++]; array[i-1]=array[0]/n;}int main(){ float score[10]; int i; for(i=0;i<10;i++) cin>>score[i]; ____; cout<<score[9]; system("pause");return 0;}
答案: 【average(score,10)】
16、 问题:以下函数my_cmp( )的功能是比较字符串s和t的大小,当s等于t时返回0,否则返回s和t的第一个不同字符的ASCII码差值,即s>t时返回正值,s<t时返回负值。划线处应填入__。#include "iostream"using namespace std; int my_cmp(char s,char t){ while(s == t){ if (*s==’\0′) return 0; ++s; ++t; } return ____;} int main(){ cout<<my_cmp("abc","abcd")<<endl; system("pause");return 0;}
答案: 【s-t】
第4讲 循环结构 第4讲 单元测验
1、 问题:若k为整型,以下while循环体中的语句执行( )。 k=2; while(k=0) { cout<<k; k–; }
选项:
A:无限次
B:0次
C:1次
D:2次
答案: 【0次】
2、 问题:假设有定义 int i,j,k=0,m=0;则执行以下程序段后k和m的值分别为( ) for(i=0;i<2;i++) { for(j=0;j<3;j++) k++; k-=j; } m=i+j;
选项:
A:k=0,m=3
B:k=0,m=5
C:k=l,m=3
D:k=l,m=5
答案: 【k=0,m=5】
3、 问题:下列关于break语句描述错误的是( )。
选项:
A:break语句可用于循环体内,它将退出该重循环
B:break语句可用于switch语句中,它将退出switch语句
C:break语句可用于if体内,它将退出if语句
D:break语句只能用于循环语句和switch语句中
答案: 【break语句可用于if体内,它将退出if语句】
4、 问题:若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是 for (i=5;i;i–) for (j=0;j<4;j++){…}
选项:
A:20
B:25
C:24
D:30
答案: 【20】
5、 问题:语句while(!e);中的条件 !e 等价于( )。
选项:
A:e==0
B: e!=1
C: e!=0
D: ~e
答案: 【e==0】
6、 问题:以下程序段( )。int x=-1;do{ x=x*x;}while (!x);
选项:
A:是死循环
B:循环执行二次
C:循环执行一次
D:有语法错误
答案: 【循环执行一次】
7、 问题:下面有关for循环的正确描述是( )。
选项:
A:for循环只能用于循环次数已经确定的情况
B:for循环是先执行循环体语句,后判定表达式
C:在for循环中,不能用break语句跳出循环体
D:for循环体语句中,可以包含多条语句,但要用花括号括起来
答案: 【for循环体语句中,可以包含多条语句,但要用花括号括起来】
8、 问题: continue语句的作用是结束整个循环的执行
选项:
A:正确
B:错误
答案: 【错误】
9、 问题:假设有定义 int i=100; 则以下循环是死循环。 while (1) { i=i%100+1; if (i>100) break; }
选项:
A:正确
B:错误
答案: 【正确】
10、 问题: do-while的循环体至少无条件执行一次
选项:
A:正确
B:错误
答案: 【正确】
11、 问题:do-while 的循环体不能是复合语句
选项:
A:正确
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦