中国大学mooc《C语言程序设计(华中科技大学) 》章节测试答案_第1页
中国大学mooc《C语言程序设计(华中科技大学) 》章节测试答案_第2页
中国大学mooc《C语言程序设计(华中科技大学) 》章节测试答案_第3页
中国大学mooc《C语言程序设计(华中科技大学) 》章节测试答案_第4页
中国大学mooc《C语言程序设计(华中科技大学) 》章节测试答案_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

titleC语言程序设计(华中科技大学)中国大学mooc答案100分最新版content

第一周:C语言概述第一周单元测试1、以下关于C语言说法错误的是(

)。答案:C语言程序习惯使用大写英文字母2、以下不正确的C语言标识符是(

)。答案:xy.z3、以下正确的C语言标识符是(

)。答案:x1234、一个C语言程序的执行是从(

)。答案:main()函数开始,直到main()函数结束5、在C语言程序中,main()函数的位置(

)。答案:可以任意6、一个C程序是由(

)。答案:一个或多个函数组成7、C语言源程序的基本单位(

)。答案:函数

8、编辑程序的功能是(

)。答案:建立并修改程序9、C编译程序是(

)。答案:将C源程序编译成目标程序10、C编译程序能发现源程序的(

)。答案:语句的语法错误

11、带C语言编译器的CodeBlocks集成开发环境不能完成(

)。答案:设计C程序12、CodeBlocks调试程序进入调试状态后,可以(

)。答案:查看当前函数中有效作用域的变量13、一个C语言程序可以有多个main()函数答案:错误14、C语言程序区分大小写答案:正确15、C语言程序的变量名可以是关键字答案:错误16、C语言编译程序可以发现注释错误答案:错误17、CodeBLocks集成开发环境,可以设计C程序答案:错误第二周:C语言变量、常量及表达式第二周单元测验1、已知字符’A’的ASCII代码值是65,字符变量c1的值是’A’,c2的值是’D’。执行语句“printf(“%d,%d”,c1,c2–2);”后,输出的结果是(

)。答案:65,662、字符串”\\”ABC\”\”的长度是(

)。答案:73、设有整型变量i,其值为020;整型变量j,其值为20。执行语句:

printf(“%d,%d”,i,j);

后,输出结果是(

)。答案:16,204、设整型变量x为5,y为2,结果值为1的表达式是(

)。答案:x!=y||x>=y5、二进制加法10010100+00110010的和为()。答案:110001106、属于整型常量的是(

)。答案:147、x,a,b均为整型变量,执行语句“x=a=3,b=(a–);”后,x、a、b的值依次为(

)。答案:3,2,38、设整型变量x的值为35,则表达式“(x&15)&&(x|15)”的值是(

)。

答案:19、属于实型常量的是(

)。答案:1E-110、设整型变量a为5,使整型变量b不为2的表达式是(

)。答案:b=a%2;

11、设有整型变量n1、n2,其值均为3,执行语句“n2=(n1++,n2++,++n1);”后,n2的值是(

)。答案:512、设单精度型变量f、g均为5.0,使f为10.0的表达式是(

)。答案:f+=g;13、表达式“1?(0?3:2):(10?1:0)”的值为(

)。答案:214、设x、y、z均为实型变量,代数式“x/(yz)”的C表达式写法正确的是(

)。答案:x/(y*z)15、下面程序的输出是(

)。#include<stdio.h>voidmain(){

intx=10,y=3;

printf(“%d”,y=x/y);}答案:316、下列不正确的转义字符是(

)。答案:‘\084’17、若有以下定义:chara;

intb;floatc;

doubled;则表达式a*b+d-c值的类型为(

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

)。#include<stdio.h>voidmain()

{

inta=10,b=10;

printf(“%d,%d”,–a,++b);}答案:9,1119、表达式1.5-7/2+4.3+5%2的值是(

)。答案:3.820、若有以下程序:#include<stdio.h>void

main(){

intk=2,i=2,m;

m=(k+=i*=k);

printf(“%d,%d”,m,i);}执行后的输出结果是(

)。答案:6,4

21、能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是(

)。答案:a>=10‖a<=022、已知unsignedintx=012,y=0x0f;则表达式x&y的结果为(

)。答案:1023、已知unsignedintx=012,y=0x0f;则表达式x|y的结果为(

)。答案:1524、已知unsignedintx=012,y=0x0f;则表达式x^y的结果为(

)。答案:525、已知unsignedintx=012,y=0x0f;则表达式x&(y^y)的结果为(

)。答案:026、已知unsignedintx=012,y=0x0f;则表达式(x>>3)&(y<<4)的结果为(

)。答案:027、已知inta=5,b=4;则表达式!a&&++b运行后,变量a,b的值分别为(

)。答案:5,428、已知inta=5,b=3;则表达式a||(b+4)&&((++a)*(b++))运行后,表达式、变量a与b的值分别为(

)。答案:1,5,329、已知inta=10,b=20,c;max=b;则表达式c=(a>b)&&(max=a)运行后,变量c与max的值分别为(

)。答案:0,2030、已知unsignedinta=1,b=2,c=3,d=4;floatf=1.0;则表达式f=(((a-b>d-c)?a++:b++),a*b)运行后,变量f的值为(

)。答案:4.031、在C语言中,表达式“5&&6”的值为(

)。答案:132、有以下程序#include<stdio.h>voidmain(){

inta,b,c=290;

a=(c/100)%9;

b=(-1)&&(-1);

printf(“%d,%d”,a,b);}输出结果是(

)。答案:2,133、下面程序的输出是(

)。#include<stdio.h>void

main(){

inta=-1,b=4,k;

k=(a++<0)&&(!(b–<=0));

printf(“%d,%d,%d%”,k,a,b);}答案:1,0,334、有以下程序#include<stdio.h>void

main(){

inta,b,d=25;

a=d/10%9;

b=a&&(-1);

printf(“%d,%d”,a,b);}程序运行后的输出结果是(

)。答案:2,135、在C语言程序中对用到的所有变量都必须先进行定义并指定其数据类型。答案:正确36、一个变量在内存中占据一定的存储单元。答案:正确37、在C语言程序中语句”floata=b=c=1.0;”是合法的。答案:错误38、自增运算符(++)或自减运算符(–)不能用于常量。答案:正确39、在C程序的表达式中,为了明确表达式的运算次序,提倡使用小括号”()”。答案:正确40、%运算符要求运算的操作数必须是整型数。答案:正确41、关系表达式的值可以是任意整数。答案:错误42、在C语言中,逗号运算符的优先级最低。答案:正确43、C语言允许混合类型数据之间进行运算。答案:正确44、转义字符表示法只能表示字符不能表示数字。答案:错误45、在C语言标识符定义中,大小写字母是不加区分的。答案:错误第三周:C程序及流程控制(1)第三周单元测验1、C语言的结构化程序设计所包含的结构是(

)。答案:顺序结构、选择结构和循环结构2、下面哪个语句不便于C语言结构化编程的是(

)。答案:goto语句3、C语言的流程控制语句不包括(

)。答案:表达式语句4、C语言的辅助控制语句不包括(

)。答案:swicth…case语句5、关于C语言的复合语句,下面哪种说法是正确的(

)。答案:将若干条语句用括弧{}括起来就构成了复合语句;6、关于C语言的空语句,下面哪种说法是正确的(

)。答案:只有分号的语句就叫空语句;7、关于表达式语句,下面哪种说法是正确的(

)。答案:任何一个表达式加上一个分号就是一条表达式语句;8、关于while循环,下面哪种说法是错误的(

)。答案:while循环的循环体不能为空语句;9、阅读以下程序:#include<stdio.h>void

main()

{

intx;

scanf(“%d”,&x);

if(x–<5)

printf(“%d”,x);

else

printf(“%d”,x++);

}程序运行后,如果从键盘上输入5,则输出结果是(

)。答案:410、有如下程序,该程序的输出结果是(

)。#include<stdio.h>void

main(){

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

switch(x)

{

case0:b++;

case1:a++;

case2:a++;

b++;

}

printf(“a=%d,b=%d”,a,b);}答案:a=2,b=111、有以下程序#include<stdio.h>void

main(){

inta=16,b=21,m=0;

switch(a%3)

{

case0:

m++;

break;

case1:

m++;

switch(b%2)

{

default:

m++;

case0:

m++;

break;

}

}

printf(“%d”,m);}程序运行后的输出结果是(

)。答案:312、有以下程序#include<stdio.h>void

main(){

inta=5,b=4,c=3,d=2;

if(a>b&&b>c)

printf(“%d”,d);

elseif(c-1>=d)

printf(“%d”,d+1);

else

printf(“%d”,d+2);}执行后输出结果是(

)。答案:213、有以下程序#include<stdio.h>void

main(){

inta=3,b=4,c=5,d=2;

if(a<b)

{

if(b>c)

printf(“%d

“,d+++1);

else

printf(“%d

“,++d+1);

}

printf(“%d”,d);}

程序运行后的输出结果是(

)。答案:4

314、有以下程序#include<stdio.h>void

main(){

inti,s=0;

for(i=1;i<10;i+=2)

s+=i+1;

printf(“%d”,s);}程序运行后的输出结果是(

)。答案:数1~10中的偶数之和15、以下程序段的输出结果是(

)。

intx=3;

do

{

printf(“%3d”,x-=2);

}while(!(–x));

答案:1

-216、以下程序中,while循环的循环次数是(

)。#include<stdio.h>void

main(

){

int

i=0;

while(i<10)

{

if(i<1)

continue;

if(i==5)

break;

i++;

}……}答案:死循环,不能确定次数17、有以下程序#include<stdio.h>void

main(){

inta=12,b=-34,c=-56,min;

min=a;

if(min>b)

min=b;

if(min>c)

min=c;

printf(“min=%d”,min);}输出结果是(

)。答案:min=-5618、有以下程序#include<stdio.h>void

main(){

inta;

scanf(“%d”,&a);

if(a>=0)

{

if(a%2==0)

printf(“%disapositiveevennumber.”,a);

else

printf(“%disapositiveoddnumber.”,a);

}

else

{

if(a%2==0)

printf(“%disanegativeevennumber.”,a);

else

printf(“%disanegativeoddnumber.”,a);

}}若通过键盘输入-11,则运行结果是(

)。答案:-11isanegativeoddnumber.19、有以下程序#include<stdio.h>void

main(){

charc;

while((c=getchar())!=‘$’)

{

if(‘A’<=c&&c<=‘Z’)

putchar(c+32);

elseif(‘a’<=c&&c<=‘z’)

putchar(c);

}}当输入为abc&%ABC#!$时,运行结果是(

)。答案:abcabc20、输入一个字符,判断该字符是数字、字母、空格还是其它字符。请选择正确的答案填空(

)。#include<stdio.h>void

main(){

charc;

c=getchar();

if(____)

printf(“ItisanENGLISHcharacter.”);

elseif(‘0’<=c&&c<=‘9’)

printf(“ItisaDIGITALcharacter.”);

elseif(c==32)

printf(“ItisaSPACEcharacter.”);

else

printf(“Itisothercharacter.”);}当输入为abc*&%ABC#!$时,运行结果是(

)。答案:(‘A’<=c&&c<=‘Z’)

||(‘a’<=c&&c<=‘z’)21、程序读入10个整数,统计其中非负数的个数,并计算非负数之和。请选择正确的答案填空(

)。#include<stdio.h>void

main(){

inti,a,s=0,count=0

;

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

{

scanf(“%d”,&a);

if(a<0)

continue;

________

}

printf(“s=%d\tcount=%d“,s,count);}答案:s+=a;count++;22、C语言程序的结构和版式是没有任何规律的;答案:错误23、初学者编写C语言的程序不需要养成加注释的习惯;答案:错误24、使用复合语句便于程序的结构化;答案:正确25、结构化程序设计的三种基本结构是顺序结构、选择结构和循环结构。答案:正确26、break语句的功能只是用于退出循环;答案:错误27、C语言中一般情况下不推荐使用goto语句;答案:正确28、switch多分支选择语句的功能可以用条件分支嵌套语句来实现答案:正确29、空语句就是程序中没有什么作用的语句;答案:错误30、while循环和for循环可以相互替代;答案:正确31、在一些特定的应用中,用switch多分支选择语句代替条件分支嵌套语句可以提高程序的可读性。答案:正确第四周:C程序及流程控制(2)第四周单元测验1、如下程序,求序列:1、3、5、7…….的前20项之和,请选择正确的答案填空(

)。#include<stdio.h>

voidmain()

{

int

i;

int

sum,t;

//sum代表和,t代表某项

sum

=

0;

t

=

1;

for(i=1;

_____

;

i++)

{

sum+=t;

t+=2;

}

printf(”sum=%d”,sum);}答案:i<=202、计算2+4+6+8+……+100的值,请选择正确的答案填空(

)。#include<stdio.h>

voidmain()

{

int

i;

int

s,t;

//s代表和,t代表某项

s

=

0;

t

=

2;

for(i=1;

i<=50;

i++)

{

_______;

t+=2;

}

printf(”sum=%d”,s);}答案:s=s+t3、如下程序,求序列:1!,

2!,

3!,

4!………..的前八项之和.请选择正确的答案填空(

)。#include<stdio.h>voidmain(){

int

i;

____;

//sum代表和,t代表某项

sum=0;

t

=1;

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

{

sum+=t;

t*=(i+1);

}

printf(”sum=%ld”,sum);}答案:longsum,t4、求序列:2!+3!+4!+5!+……+11!的值.请选择正确的答案填空(

)。#include<stdio.h>voidmain(){

int

i;

longsum,t

;

//sum代表和,t代表某项

sum=0;

t

=2;

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

{

sum+=t;

_____;

}

printf(“sum=%ld”,sum);}答案:

t*=(i+2)

5、编一程序,求100-999之间所有的水仙花数,所谓水仙花数就是说数的百位。十位和个位数的立方和恰好等于它本身。请选择正确的答案填空(

)。#include<stdio.h>voidmain()

{

int

i,a,b,c;

for(_____)

{

a=i/100;

//求百位数

b=(i-a100)/10;

//求十位数

c=i%10;

//求个位数

if(aaa+bbb+cc*c==i)

{

printf(”%6d”,i

);

}

}

}答案:i=100;i<=999;i++6、有以下程序#include<stdio.h>void

main(

)

{

inta=1,b;

for(b=1;b<=10;b++)

{

if(a>=8)

break;

if(a%2==1)

{

a+=5;

continue;

}

a-=3;

}

printf(“%d”,b);

}程序运行后的输出结果是(

)。答案:47、有以下程序#include<stdio.h>void

main(){

inti;

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

{

switch(i)

{

case1:

printf(“%3d”,i);

case2:

printf(“%3d”,i);

default:

printf(“%3d”,i);

}

}

}执行后输出结果是(

)。答案:0

1

1

1

2

28、下面程序的输出是(

)。#include<stdio.h>void

main(){

inty=9;

for(

;y>0;y–)

{

if(y%3==0)

{

printf(“%3d”,–y);

continue;

}

}}答案:

8

5

29、有以下程序#include<stdio.h>void

main(){

intx,i;

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

{

x=i;

if(++x%2==0)

if(x%3==0)

if(x%7==0)

printf(“%d”,i);

}}输出结果是(

)。

答案:4110、以下程序为求序列:1/2、3/4、5/8、7/16、9/32、……所有大于或等于0.000001的数据项之和。请选择正确的答案填空(

)。#include<stdio.h>voidmain(){

floatsum,a,b

;

//sum代表和,a代表分子,b代表分母

sum=0.0;

a=1;

//分子赋初值

b=2;

//分母赋初值

while(a/b>=1e-6)

{

_____;

a=a+2;

//求下一项分子

b=b*2;

//求下一项分母

}

printf(“sum=%f”,sum);}答案:sum+=(a/b)

11、已知abc+cba=1333,a,b,c,为一位数,以下程序为求所有可能的a,b,c的程序。请选择正确的答案填空(

)。#include<stdio.h>voidmain()

{

int

i,a,b,c;

for(i=100;i<=999;i++)

{

a=i/100;

//求百位数

b=(i-a100)/10;

//求十位数

c=i%10;

//求个位数

if(

_____)

{

printf(”a=%d,b=%d,c=%d”,a,b,c

);

}

}

}答案:(a100+b10+c+c100+b10+a)==133312、以下程序为求两个正整数的最大公约数的程序。请选择正确的答案填空(

)。#include<stdio.h>voidmain()

{

int

i,a,b;

scanf(“%d%d”,&a,&b);

for(_____;i>0;i–)

{

if((a%i==0)&&(b%i==0))

{

printf(”themax=%d“,i);

break;

}

}

}答案:i=(a<b?a:b)13、以下程序为判断一个正整数是否为素数的程序。请选择正确的答案填空(

)。#include<stdio.h>voidmain()

{

int

i,a;

scanf(“%d”,&a);

for(i=2;i<a;i++)

{

if(____)

{

break;

}

}

if(i>=a)

{

printf(“%disasushu.”,a);

}

else

{

printf(“%disnotasushu.”,a);

}

}答案:a%i==014、用100元钱买100只鸡,其中母鸡每只3元,公鸡每只2元,小鸡1元3只,且每种鸡至少买1只。以下程序为计算百钱买百鸡所有可能购买方案的程序。请选择正确的答案填空(

)。#include<stdio.h>voidmain(){

int

a,b,c;//a,b,c分别代表母鸡、公鸡和小鸡数

for(a=1;a<=98;a++)

{

for(b=1;b<=98;b++)

{

for(c=1;c<=98;c++)

{

if(_________)

{

printf(“muji:%d,

gongji:%d,xiaoji:%d”,a,b,c);

}

}

}

}}答案:(a+b+c==100)&&(a3+b2+c/3==100)&&(c%3==0)15、计算1!,2!,3!,……,10!的值,并输出结果。请选择正确的答案填空(

)。#include<stdio.h>voidmain(){

int

i;

longints=1

;

//s代表阶乘的结果

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

{

____;

printf(“%d!=%ld”,i,s);

}}答案:s*=i

16、for循环语句中的三个表达式起着不同的作用,表达式1一般用于进入循环前给某些变量赋初值;答案:正确17、在for循环语句中,表达式1、表达式2和表达式3都是逗号运算表达式;答案:错误18、在C语言编程中应该尽量少用空格或者空行;答案:错误19、在C语言编程中,如果出现嵌套的大括弧对{},使用缩进对齐的格式能增强程序的可读性;答案:正确20、C语言的辅助控制语句包括break,continue、return和goto语句;答案:正确21、C语言编程中,不提倡把多个语句写在一行中,提倡一行只写一条语句;答案:正确22、在C语言编程时,要养成修改代码同时修改相应注释的习惯,以保证注释与代码的一致性。答案:正确23、在C语言编程中,相对独立的程序块之间、变量说明之后加上空行可以增加程序的可读性。答案:正确第五周:函数(1)第五周单元测试1、下列关于C语言程序的结构化设计,说法错误的是()答案:只有一个源文件,对函数大小没有限制2、定义函数voidfun()函数,函数的返回值类型为()答案:函数无返回值3、下面关于函数描述正确的是()答案:函数的定义不可以嵌套,但是调用可以嵌套4、若定义函数时函数的返回类型缺省,则函数的默认数据类型为()答案:int5、一个函数返回值的类型是由()决定的答案:定义函数时指定的函数数据类型6、下面叙述中正确的是()答案:对于用户自己定义的函数,在使用前必须加以说明7、函数的形参可以是()答案:局部自动变量8、有如下定义的函数:func(inta){

printf(“%d”,a);}则该函数的返回值类型是()答案:int类型9、函数内部的局部静态变量,下列说法正确的是()答案:在函数退出后不被释放,程序执行结束释放10、局部自动变量,下列说法正确的是()答案:进入函数分配内存,退出函数,释放内存11、下列说法不正确的是()答案:全局静态变量和局部静态变量,作用域和寿命相同12、下面程序段运行的结果为()#include<stdio.h>intf();intf()

{

staticinti=0;

ints=1;

s+=i;

i++;

returns;

}

voidmain()

{

inti,a=0;

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

a+=f();

printf(“%d”,a);

}答案:1513、下面程序段运行的结果为()#include<stdio.h>inttry1();inttry1(){

staticintx=3;

x++;

returnx;}voidmain(){

inti,x;

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

x=try1();

printf(“%d”,x);}答案:614、下面程序的运算结果为()#include<stdio.h>voidfun();intmain(){

inta=10;

fun();

printf(“%3d”,a);

return0;}voidfun(){

inta=20;

printf(“%3d”,a);}答案:

201015、以下正确的函数形式是()答案:intfun(intx,inty){

doublez;

z=x+y;

returnz;}16、以下程序的输出结果是()#include<stdio.h>inti=10;intfunc();voidmain(){

intj=1;

j=func();

printf(“%3d”,j);

j=func();

printf(“%3d”,j);}intfunc(){

intk=0;

k=k+i;

i=i+10;

returnk;}答案:

1020

17、函数内定义的局部变量可以在函数运行结束后继续被调用答案:错误18、变量根据其作用域的范围可以分作局部变量和全局变量答案:正确19、当变量的存储类型定义缺省时,系统默认为变量的存储类型为auto类型,分配在静态区答案:错误20、在一个函数内定义的静态局部变量不能被另外一个函数所调用答案:正确21、函数调用语句:func(rec1,rec2+rec3,(rec4,rec5));中,含有的实参个数是5答案:错误22、变量被定义后,它的作用域和寿命就被确定了,并且不可改变。答案:正确23、在同一个作用域不可定义同名变量,在不同的作用域可以定义同名变量答案:正确24、函数内部的静态变量,在函数退出后不被释放答案:正确25、C语言中函数返回值的类型由return语句中的表达式的类型决定答案:错误26、C语言中一般全局变量与静态全局变量生存期不同答案:错误27、程序进行编译时,不为形式参数分配存储空间答案:正确28、编译器根据函数的原型来检查函数的调用正确与否答案:正确第六周:函数(2)第六周单元测验1、下列说法中正确的是()答案:函数原型是一条语句,不包括函数体2、在调用函数时,如果实参是整型变量,它与对应形参之间的数据传递方式是()答案:单向值传递

3、若定义函数float*fun(),则函数fun的返回值为()答案:一个指向变量的指针4、C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是()答案:同名的局部变量5、以下结论中只有()是正确的答案:所有的递归程序均可以采用非递归算法实现6、main()函数的数据类型,可以是()答案:void7、下面程序段运行的结果为()#include<stdio.h>intfun(floatx,floaty);intfun(floatx,floaty){

returnx>y?x:y;}voidmain(){

printf(“%d,%d”,fun(3,5),fun(4.8,4.6));}答案:5,48、下面程序的运算结果为()#include<stdio.h>intfun(intn);intfun(intn){

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

return1;

returnfun(n-1)+fun(n-2);}voidmain(){

printf(“%d”,fun(6));}答案:89、以下程序运行结果是()#include<stdio.h>voidf(inta,intb);voidf(inta,intb){

intt;

t=a;

a=b;

b=t;}voidmain(){

intx=3,y=2,z=1;

if(x>y)

f(x,y);

if(y>z)

f(y,z);

if(x>y)

f(x,y);

printf(“%d,%d,%d”,x,y,z);}答案:3,2,110、以下程序的输出结果是()#include<stdio.h>intfunc(ints);voidmain(){

inti,x=0;

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

{

x=func(i+1);

printf(“%3d”,x);

}

printf(“”);}intfunc(ints){

intx;

staticintt=3;

x=s+t;

t++;

returnx;}答案:

4

6

8

10

11、以下程序的执行结果是()#include<stdio.h>intswap(inta,intb);voidmain(){

inta,b;

a=3,b=10;

swap(a,b);

printf(“a=%d,b=%d”,a,b);

}intswap(inta,intb){

inttemp;

temp=a;

a=b;

b=temp;

return0;}答案:a=3,b=10

12、以下程序的执行结果是()#include<stdio.h>intsum(intk);voidmain(){

ints,i;

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

s=sum(i);

printf(“s=%d”,s);}intsum(intk){

intx=0;

return(x+=k);

}答案:s=1013、以下程序的执行结果是()#include<stdio.h>intfunc(int);voidmain(){

inta=1,i;

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

{

printf(“%3d”,func(a+i));

}}intfunc(intb){

staticinti;

return

b+i;}答案:

1

2

3

4

14、以下程序的执行结果是()#include<stdio.h>intmulti(intx,inty);voidmain(){

inta,b,c;

a=10,b=12;

c=mult(a,b);

printf(“%d%d=%d”,a,b,c);}intmulti(intx,inty){

returnxy;}答案:1012=12015、以下程序的执行结果是()#include<stdio.h>intn;voidfunc();voidmain(){

staticintx=6;

inty;

y=n;

func();

printf(“x=%d,y=%d,n=%d”,x,y,n);}voidfunc(){

staticintx;

inty=10;

x=x+20;

n=n+2;

y=y+n;}答案:x=6,y=0,n=216、C语言中,函数调用时,形参与实参的个数可以不必保持一致答案:错误17、C语言函数间使用值传递数据时,对形参进行写操作,会影响主调函数里相关变量的值答案:错误18、C语言中,一个函数可以有多个返回值答案:错误19、C语言函数间使用传址方式传递数据时,对形参进行写操作,可以影响主调函数里相关变量的值答案:正确20、C语言中,使用全局变量可以使程序设计简单,移植性好答案:错误21、函数的递归调用是一个函数直接或间接地调用它自身答案:正确第七周:数组(1)第七周单元测验1、下列一维数组定义正确的是(

)答案:inta[3];2、下列一维数组定义与初始化错误的是(

)答案:inta[3]=0;3、下列二维数组定义和初始化错误的是(

)答案:inta[3][];4、在下列语句条件下,二维数组的定义和初始化错误的是(

)#defineSIZE

9答案:inta[][SIZE];5、假定int型变量在内存中占2个字节,那么二维数组inta[3][4]所占的字节数为(

)答案:246、若有说明:int

温馨提示

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

评论

0/150

提交评论