版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MOOCC语言程序设计-郑州职业技术学院中国大学慕课答案项目一作业项目一测验1、问题:C语言的源程序是由函数组成的。()选项:A、正确B、错误正确答案:【正确】2、问题:C语言的任何一个源程序中必须有一个主函数。()选项:A、正确B、错误正确答案:【正确】3、问题:VisualC++6.0不可以开发C语言程序。()选项:A、正确B、错误正确答案:【错误】4、填空题:C语言规定,一个程序必须有一个主函数,其函数名为。正确答案:【main##%_YZPRLFH_%##main()】5、填空题:—般而言,一个C语言程序的执行是从主函数开始,到结束。正确答案:【主函数】6、填空题:一个C语言程序是由组成的。正确答案:【函数】7、填空题:开发C语言程序的步骤可以分成四步,即编辑、、连接、运行。正确答案:【编译】8、填空题:C语言规定,源程序的扩展名是.c,目标文件的扩展名是.obj,可执行文件的扩展名是。正确答案:【.exe】9、填空题:每个C语句必须以号结束。正确答案:【;##%_YZPRLFH_%##分号】10、填空题:#includestdio.hmain(){printf(Wearestudents.\n);}程序的运行结果为。正确答案:【Wearestudents.】11、填空题:#includestdio.hmain(){inta;a=5;printf(%d\n,a+1);}程序的运行结果为。正确答案:【6】项目二作业项目二测验1、问题:下列4组选项中,均不是C语言关键字的选项是()。选项:A、defineiFtypeB、getccharprintfC、includecasescanfD、whilegopow正确答案:【defineiFtype】2、问题:下列4组选项中,均是合法转义字符的选项是()。选项:A、‘\’‘\017’‘\”’B、‘\”’‘\\’‘\n’C、‘\f’‘\018’‘\xab’D、‘\\0’‘\101’‘\xlf’正确答案:【‘\”’‘\\’‘\n’】3、问题:已知字母‘b’的ASCII码值为98,如ch为字符型变量,则表达式ch=‘b’+‘5’-‘2’的值为()。选项:A、eB、dC、102D、100正确答案:【e】4、问题:以下表达式值为3的是()。选项:A、16-3%10B、2+3/2C、14/3-2D、(2+6)/(12-9)正确答案:【2+3/2】5、问题:以下叙述不正确的是()。选项:A、在C程序中,逗号运算符的优先级最低。B、在C程序中,MAX和max是两个不同的变量。C、若a和b类型相同,在计算了表达式a=b后,b中的值将放入a中,而b中的值不变。D、当从键盘输入数据时,对于整型变量只能输入整型数,对于实型变量只能输入实型数。正确答案:【当从键盘输入数据时,对于整型变量只能输入整型数,对于实型变量只能输入实型数。】6、问题:定义变量:intx;floaty;则以下正确的是()。选项:A、scanf(%f%f,x,y)B、scanf(%f%d,x,y)C、scanf(%d%f,x,y)D、scanf(%5.2f%2d,x,y)正确答案:【scanf(%d%f,x,y)】7、问题:putchar()函数可以向终端输出一个()。选项:A、字符或字符变量的值B、字符串C、实型变量D、整型变量的值正确答案:【字符或字符变量的值】8、问题:以下能正确定义整型变量a、b和c,并赋初值5的语句是()。选项:A、inta=b=c=5;B、inta,b,c=5;C、inta=5,b=5,c=5;D、a=b=c=5;正确答案:【inta=5,b=5,c=5;】9、问题:以下叙述正确的是()。选项:A、赋值语句中的“=”是表示左边变量等于右边表达式B、赋值语句中左边的变量值不一定等于右边表达式的值C、赋值语句是由赋值表达式加上分号构成的D、x+=y;不是赋值语句正确答案:【赋值语句是由赋值表达式加上分号构成的】10、问题:设有如下程序:#includestdio.hmain(){charch1=‘A’,ch2=‘a’;printf(%c\n,(ch1,ch2));}则以下叙述正确的是()。选项:A、程序的输出结果为大写字母AB、程序的输出结果为小写字母aC、运行时产生错误信息D、格式声明符的个数少于输出项的个数,编译出错正确答案:【程序的输出结果为小写字母a】11、填空题:转义字符“\r”的功能是___________。正确答案:【回车】12、填空题:运算符“%”两侧运算对象的数据类型必须都是____________。正确答案:【整型】13、填空题:表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_____。正确答案:【int##%_YZPRLFH_%##整型】14、填空题:表达式(3+10)/2的值为。正确答案:【6】15、填空题:设intx=2,y=1;表达式(!x||y--)的值是。正确答案:【1】16、填空题:以下程序段的输出结果是___。main(){inta=177;printf(%o\n,a);}正确答案:【261】17、填空题:以下程序段的输出结果是___。main(){inta=0;a+=(a=8);printf(%d\n,a);}正确答案:【16】18、填空题:以下程序段的输出结果是___。main(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(%d,%d\n,a,b);}正确答案:【2,1】19、填空题:以下程序段的输出结果是___。main(){inta,b,c=298;a=c/100%9;b=(-1)(1);printf(%d,%d\n,a,b);}正确答案:【2,1】20、填空题:如下程段序的输出结果是16.00,请填空。main(){inta=9,b=2;floatx=_______,y=1.1,z;z=a/2+b*x/y+1/2;printf(%5.2f\n,z);}正确答案:【6.6】21、填空题:#includestdio.hmain(){charc1=‘6’,c2=‘0’;printf(%c,%c,%d\n,c1,c2,c2-c1);}程序的运行结果为。正确答案:【6,0,6】22、填空题:#includestdio.hmain(){intx=010,y=10,z=0x10;printf(%d,%d,%d\n,x,y,z);}程序的运行结果为。正确答案:【8,10,16】23、填空题:#includestdio.hmain(){inta=2,b=3;floatx=3.9,y=2.3;floatr;r=(float)(a+b)/.2+(int)x%(int)y;printf(%f\n,r);}程序的运行结果为。正确答案:【26.000000】24、填空题:#includestdio.hmain(){intx=12;printf(%d,%o,%x,%u\n,x,x,x,x);}程序的运行结果为。正确答案:【12,14,c,12】25、填空题:#includestdio.hmain(){intx=235;doubley=3.1415926;printf(x=%-6d,y=%-14.5f\n,x,y);}程序的运行结果为。正确答案:【x=235,y=3.14159】26、填空题:#includestdio.hmain(){printf(%f,%4.2f\n,3.14,3.14159);}程序的运行结果为。正确答案:【3.140000,3.14】27、填空题:#includestdio.hmain(){charx=‘a’,y=‘b’;printf(x=\’%3d\’,y=\’%-3d\’\n,x,y);}程序的运行结果为。正确答案:【x='97',y='98'】28、填空题:运算符“++”和“--”的运算对象只能是____________。正确答案:【变量】项目三作业项目三测验1、问题:C语言用()表示逻辑“真”值。选项:A、trueB、t或yC、非零整数值D、整数0正确答案:【非零整数值】2、问题:以下for循环是()。for(x=0,y=0;(y!=123)(x4);x++)选项:A、无限循环B、循环次数不定C、执行4次D、执行3次正确答案:【执行4次】3、问题:以下有关for循环的正确描述是()。选项:A、for循环只能用于循环次数已经确定的情况B、for循环是先执行循环体,后判定表达式C、在for循环中,不能用break语句跳出循环体D、for循环体语句中,可以包含多条语句,但要用花括号括起来正确答案:【for循环体语句中,可以包含多条语句,但要用花括号括起来】4、问题:对于for(表达式1;;表达式3),可理解为()。选项:A、for(表达式1;1;表达式3)B、for(表达式1;表达式1;表达式3)C、for(表达式1;表达式2;表达式3)D、相当于while(表达式1)正确答案:【for(表达式1;1;表达式3)】5、问题:C语言中while和do-while循环的主要区别是()。选项:A、do-while的循环体至少无条件执行一次B、while的循环控制条件比do-while的循环控制条件严格C、do-while允许从外部转到循环体内D、do-while的循环体不能是复合语句正确答案:【do-while的循环体至少无条件执行一次】6、问题:下面程序段中,语句“k++;”执行的次数为()。for(k=0,m=4;m;m-=2)for(n=1;n4;n++)k++;选项:A、16B、12C、6D、8正确答案:【6】7、问题:设声明语句inta=1,b=0;,执行下面语句后的输出结果为()。switch(a){case1:switch(b){case0:printf(**0**);break;case1:printf(**1**);break;}case2:printf(**2**);break;}选项:A、**0**B、**0****2**C、**0****1****2**D、语法有错误正确答案:【**0****2**】8、问题:执行下面程序后,i的值为()。#includestdio.hmain(){inti,x;for(i=1,x=1;i=20;i++){if(x%2==1){x+=5;continue;}if(x=10)break;x-=3;}}选项:A、21B、2C、6D、11正确答案:【6】9、填空题:while语句执行的特点是先判断后执行,如果表达式的值一开始就为_时,则循环体一次也不执行。正确答案:【假】10、填空题:for语句中的表达式1、表达式2和表达式3都可以省略,但每个表达式的_______一定不能省略。正确答案:【;##%_YZPRLFH_%##分号】11、填空题:#includestdio.hmain(){inta=3,b=4,c=5,t=99;if(baac)t=a;a=c;c=t;if(acbc)t=b;b=a;a=t;printf(%d,%d,%d\n,a,b,c);}程序的运行结果为。正确答案:【4,5,99】12、填空题:#includestdio.hmain(){inta=50,b=20,x;x=a;if(ab)x=b;printf(%d\n,x);}程序的运行结果为。正确答案:【50】13、填空题:#includestdio.hmain(){intx=10,y=5;switch(x){case1:x++;default:x+=y;case2:y--;case3:x--;}printf(x=%d,y=%d\n,x,y);}程序的运行结果为。正确答案:【x=14,y=4】14、填空题:#includestdio.hmain(){intx=2;while(x--);printf(%d\n,x);}程序的运行结果为。正确答案:【-1】15、填空题:#includestdio.hmain(){inty=10;do{y--;}while(--y);printf(%d\n,y--);}程序的运行结果为。正确答案:【0】16、填空题:#includestdio.hmain(){intx=0,y=0;while(x15){y++;x+=++y;}printf(%d,%d\n,y,x);}程序的运行结果为。正确答案:【8,20】17、填空题:#includestdio.hmain(){inta=0,i;for(i=1;i5;i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a=5;}}printf(%d\n,a);}程序的运行结果为。正确答案:【5】18、填空题:#includestdio.hmain(){intn=32761,d;while(n!=0){d=n%10;printf(%d,,d);n/=10;}}程序的运行结果为___。正确答案:【1,6,7,2,3】19、填空题:#includestdio.hmain(){inta=1,b=0;switch(a){case1:switch(b){case0:printf("郑州职业技术学院");case1:printf("软件工程系");}case2:printf("软件技术");break;case3:printf("专业\n");}}程序的运行结果为。正确答案:【郑州职业技术学院软件工程系软件技术】项目四作业项目四测验1、问题:若有以下语句,则下面()是正确的描述。chars1[]=China;chars2[]={'C','h','i','n','a'};选项:A、s1数组和s2数组的长度相同B、s1数组长度小于s2数组长度C、s1数组长度大于s2数组长度D、s1数组等价于s2数组正确答案:【s1数组长度大于s2数组长度】2、问题:为了判断两个字符str1和str2是否相等,应当使用()。选项:A、if(str1==str2)B、if(str1=str2)C、if(strcpy(str1,str2))D、ifstrcmp(str1,str2)==0)正确答案:【ifstrcmp(str1,str2)==0)】3、问题:以下一维数组a的正确定义是()。选项:A、inta(10);B、intn=10,a[n];C、intn;scanf(%d,n);inta[n];E、defineSIZE10inta[SIZE];正确答案:【#defineSIZE10inta[SIZE];】4、问题:以下能对二维数组s进行正确初始化的语句是()。选项:A、ints[2][]={{1,2,3},{4,5,6}};B、ints[][3]={{1,2,3},{4,5,6}};C、ints[2][4]={{1,2,3},{4,5},{6}};D、ints[][3]={{1,2,3},{},{4,5,6}};正确答案:【ints[][3]={{1,2,3},{4,5,6}};】5、问题:对以下说明语句的正确理解是()。inta[10]={1,2,3,4,5};选项:A、将5个初值依次赋给a[1]至a[5]B、将5个初值依次赋给a[0]至a[4]C、将5个初值依次赋给a[6]至a[10]D、因为数组长度与初值的个数不相同,所以此语句不正确正确答案:【将5个初值依次赋给a[0]至a[4]】6、问题:若有说明:inta[][3]={1,2,3,4,5,6,7};,则数组a第一维的大小是()。选项:A、2B、3C、4D、无确定值正确答案:【无确定值】7、问题:若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为()(假设a[0][0]位于数组的第一个位置上)。选项:A、i*m+jB、j*m+iC、i*m+j-1D、i*m+j+1正确答案:【i*m+j+1】8、问题:有两个字符数组a[20]、b[20],则以下正确的输入语句是()。选项:A、gets(a,b);B、scanf(%s%s,a,b);C、scanf(%s%s,a,b);D、gets(a);gets(b);正确答案:【scanf(%s%s,a,b);】9、问题:下面对字符数组的描述中错误的是()。选项:A、字符数组中可以存放字符串B、字符数组中的字符串可以整体输入输出C、可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值D、不可以用关系运算符对字符数组中的字符串进行比较正确答案:【可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值】10、问题:有下面程序段,则()。chara[3],b[]=China;a=b;printf(%s,a);选项:A、运行后将输出ChinaB、运行后将输出ChC、运行后将输出ChiD、编译出错正确答案:【编译出错】11、问题:定义以下变量和数组:inti;intx[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i=0;i3;i++)printf(%d,x[i][2-i]);选项:A、159B、147C、357D、369正确答案:【357】12、问题:不能把字符串China赋给数组b的语句是()。选项:A、charb[10]={'C','h','i','n','a','\0'};B、charb[10],b=China;C、charb[10];strcpy(b,China);D、charb[10]=China;正确答案:【charb[10],b=China;】13、问题:当执行下面程序且输入ABC时,则输出的结果是()。#includestdio.h#includestring.hmain(){chara[10]=12345;strcat(a,6789);gets(a);printf(%s,a);}选项:A、ABCB、ABC9C、123456ABCD、ABC456789正确答案:【ABC】14、问题:调用strlen(abe\0def\0g)的结果为()。选项:A、3B、6C、9D、10正确答案:【3】15、问题:在C语言中,二维数组元素在内存中的存放顺序是()。选项:A、由用户自己定义B、由编译器完成C、按行存放D、按列存放正确答案:【按行存放】16、问题:下面的程序,其运行结果是()。charc[]={'V','e','r','y','\0','g','o','o','d','!'};printf(%s,c);选项:A、Verygood!B、VeryC、'V','e','r','y'D、前三个答案均有错误正确答案:【Very】17、问题:C语言数组元素的下标必须是正整数、0或者整型表达式。选项:A、正确B、错误正确答案:【错误】18、问题:C语言的数组名是一个地址常量,不能对其进行赋值运算和自加、自减运算。选项:A、正确B、错误正确答案:【正确】19、问题:C语言数组的下标下限为0,上限为用户定义的变量表达式的值。选项:A、正确B、错误正确答案:【错误】20、问题:用函数strlen()检测字符串长度时应包含字符串结束符'\0'。选项:A、正确B、错误正确答案:【错误】21、问题:不能直接用赋值语句将字符串赋给字符数组。选项:A、正确B、错误正确答案:【正确】22、填空题:#includestdio.hmain(){inta[]={1,2,3,4},i,s=0,j=1;for(i=3;i=0;i--){s=s+a[i]*j;j=j*10;}printf(s=%d\n,s);}程序的运行结果为。正确答案:【s=1234】23、填空题:#includestdio.hmain(){inti,j,s=0;inta[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i3;i++)for(j=0;j3;j++)s=s+a[i][j];printf(s=%d\n,s);}程序的运行结果为。正确答案:【s=45】24、填空题:#includestdio.hmain(){inti,s=0;charch[10]={65rose28};for(i=0;ch[i]='0'ch[i]='9';i+=2)s=10*s+ch[i]-'0';printf(%d\n,s);}程序的运行结果为。正确答案:【6】25、填空题:#includestdio.h#includestring.hmain(){charstr1[20]={hello};charstr2[]={world};printf(%s,strcat(str1,str2));}程序的运行结果为。正确答案:【helloworld】26、填空题:#includestdio.h#includestring.hmain(){intd;chara[20]=ab\n\\\012/\\\;d=strlen(a);printf(%d,d);}程序的运行结果为。正确答案:【8】项目五作业项目五测验1、问题:C允许函数值类型缺省定义,此时该函数值隐含的类型是()。选项:A、int型B、long型C、float型D、double型正确答案:【int型】2、问题:C语言规定函数的返回值的类型是由()。选项:A、return语句中的表达式类型所决定B、调用该函数时的主调用函数类型所决定C、调用该函数时系统临时决定D、在定义该函数时所指定的函数类型所决定正确答案:【在定义该函数时所指定的函数类型所决定】3、问题:以下正确的函数定义形式是()。选项:A、doublefun(intx,inty);{z=x+y;returnz;}B、fun(intx,y){intz;returnz;}C、fun(x,y){intx,y;doublez;z=x+y;returnz;}D、doublefun(intx,inty){doublez;z=x+y;returnz;}正确答案:【doublefun(intx,inty){doublez;z=x+y;returnz;}】4、问题:以下函数调用的语句中含有()个实参。func((exp1,exp2),(exp3,exp4,exp5));选项:A、1B、2C、3D、4正确答案:【2】5、问题:关于函数参数说法正确的是()。选项:A、实参与其对应的形参各自占用独立的内存单元B、实参与其对应的形参共同占用一个内存单元C、只有当实参和形参同名时才占用同一个内存单元D、形参是虚拟的,不占用内存单元正确答案:【实参与其对应的形参各自占用独立的内存单元】6、问题:以下叙述中不正确的是()。选项:A、在不同的函数中可以使用相同名字的变量B、函数中的形参是局部变量C、在一个函数内定义的变量只在本函数范围内有效D、在一个函数内的复合语句中定义的变量在本函数范围内有效正确答案:【在一个函数内的复合语句中定义的变量在本函数范围内有效】7、问题:在C语言中,形参的隐含存储类别是()。选项:A、自动(auto)B、静态(static)C、外部(extern)D、寄存器(register)正确答案:【自动(auto)】8、问题:C语言规定,除main函数外,程序中各函数之间()。选项:A、既允许直接递归调用也允许间接递归调用B、不允许直接递归调用也不允许间接递归调用C、允许直接递归调用不允许间接递归调用D、不允许直接递归调用允许间接递归调用正确答案:【既允许直接递归调用也允许间接递归调用】9、问题:以下叙述中不正确的是()。选项:A、函数中的自动变量可以赋初值,每调用一次,赋一次初值B、在调用函数时,实参和对应形参的类型要一致C、全局变量的隐含类别是自动存储类别D、函数形参可以说明为register变量正确答案:【全局变量的隐含类别是自动存储类别】10、问题:以下正确的说法是()。选项:A、函数的定义不能嵌套,但函数的调用可以嵌套B、函数的定义可以嵌套,但函数的调用不能嵌套C、函数的定义和调用都可以嵌套D、函数的定义和调用都不能嵌套正确答案:【函数的定义不能嵌套,但函数的调用可以嵌套】11、问题:在一个被调用函数中,关于return语句使用的描述,()是错误的。选项:A、被调用函数中可以不用return语句B、被调用函数中,可以使用多个return语句C、被调用函数中,如果有返回值,就一定要有return语句D、被调用函数中,一个return语句可以返回多个值给调用函数正确答案:【被调用函数中,一个return语句可以返回多个值给调用函数】12、问题:在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量使用的存储类别是()。选项:A、externB、registerC、autoD、static正确答案:【static】13、填空题:C语言程序中定义一个函数由两部分组成,即函数说明和。正确答案:【函数体】14、填空题:无返回值的函数应定义为类型。正确答案:【void】15、填空题:函数可以嵌套调用,不可以嵌套。正确答案:【定义】16、填空题:在C语言中,按照函数在程序中出现的位置来分,函数的三种主要调用方式是函数表达式、和函数参数。正确答案:【函数语句】17、填空题:有参函数中,在定义函数时函数名后面括号中的变量名称为。正确答案:【形式参数##%_YZPRLFH_%##形参】18、填空题:从变量的作用域来分,变量分为局部变量和变量。正确答案:【全局】19、填空题:从变量值存在的时间来看,变量分为动态存储方式和存储方式。正确答案:【静态】20、填空题:函数中的局部变量的值在函数调用结束后不消失而保留原值,即其占用的存储单元不释放,那么这个变量为静态变量,用关键字进行声明。正确答案:【static】21、填空题:#includestdio.hvoidprtv(intx){printf(%d\n,++x);}main(){inta=25;prtv(a);}程序的运行结果为。正确答案:【26】22、填空题:#includestdio.hfunc(inta){staticintb=1;b++;return(a+b);}main(){inta=4,x;for(x=0;x3;x++)printf(%d,func(a));}程序的运行结果为。正确答案:【678】23、填空题:#includestdio.h#defineN10intfunc(intb[]){ints=0,t;for(t=0;tN;t++)s=s+b[t];return(s);}main(){inta[]={1,2,3,4,5,6,7,8,9,10},s;s=func(a);printf(s=%d\n,s);}程序的运行结果为。正确答案:【s=55】24、填空题:#includestdio.hfunc(intx){intp;if(x==0||x==1)return(3);p=x-func(x-2);returnp;}main(){printf(%d\n,func(9));}程序的运行结果为。正确答案:【7】25、填空题:#includestdio.hfunc(inta[][3]){inti,j,sum=0;for(i=0;i3;i++)for(j=0;j3;j++){a[i][j]=i+j;if(i==j)sum=sum+a[i][j];}return(sum);}main(){inta[3][3]={1,3,5,7,9,11,13,15,17};intsum;sum=func(a);printf(\nsum=%d\n,sum);}程序的运行结果为。正确答案:【sum=6】26、填空题:#includestdio.hlongfib(intn){if(n2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf(%d\n,fib(5));}程序的运行结果为。正确答案:【10】27、填空题:在主调函数中调用一个函数时,函数名后面括号中的参数称为。正确答案:【实际参数##%_YZPRLFH_%##实参】项目六作业项目六测验1、问题:变量i的值为3,i的地址为2000,若欲使指针变量p指向变量i,则下列赋值正确的是()。选项:A、i=3;B、*p=3;C、*p=2000;D、p=i;正确答案:【p=i;】2、问题:设有说明ints[2]={0,1},*p=s;,则下列错误的C语句是()。选项:A、s+=1;B、p+=1;C、*p++D、(*p)++;正确答案:【s+=1;】3、问题:设有定义:“inta,*pa=a;”,以下scanf语句中能正确为变量a读入数据的是()。选项:A、scanf(%d,a);B、scanf(%d,pa);C、scanf(%d,pa);D、scanf(%d,*pa);正确答案:【scanf(%d,pa);】4、问题:对于语句“int*pa[5];”,的描述,下列说法正确的是()。选项:A、pa是一个指向数组的指针,所指向的数组是5个int型元素B、pa是一个指向某数组中第5个元素的指针,该元素是int型变量C、pa[5]表示某个数组的第5个元素D、pa是一个具有5个元素的指针数组,每个元素都是一个int型指针正确答案:【pa是一个具有5个元素的指针数组,每个元素都是一个int型指针】5、问题:指针可以用来表示数组元素,若已知语句“inta[3][7];”,则下列表示中错误的是()。选项:A、*(a+1)[5]B、*(*a+3)C、*(*(a+1))D、*(a[0][0]+2)正确答案:【*(a+1)[5]】6、问题:有如下定义:“inta[5],*p;p=a;”则下列描述错误的是()。选项:A、表达式p=p+1是合法的B、表达式a=a+1是合法的C、表达式p-a是合法的D、表达式a+2是合法的正确答案:【表达式a=a+1是合法的】7、问题:设有以下定义:inta[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int(*ptr)[3]=a,*p=a[0];则下列能够正确表示数组元素a[1][2]的表达式是()。选项:A、*((*ptr+1)[2])B、*(*(p+5))C、(*ptr+1)+2D、*(*(a+1)+2)正确答案:【*(*(a+1)+2)】8、问题:设“inta[3][4]={{1,3,5,7},{2,4,6,8}};”,则*(*a+1)的值为()。选项:A、1B、2C、3D、4正确答案:【3】9、问题:设“charb[5],*p=b;”,则正确的赋值语句是()。选项:A、b=abcd;B、*b=abcd;C、p=abcd;D、*p=abcd;正确答案:【p=abcd;】10、问题:设“inta[10],*pointer=a;”,以下不正确的表达式是()。选项:A、pointer=a+5;B、a=pointer+a;C、a[2]=pointer[4];D、*pointer=a[0];正确答案:【a=pointer+a;】11、问题:以下程序执行后,a的值是()。#includestdio.hmain(){inta,k=4,m=6,*p1=k,*p2=m;;a=p1==m;printf(%d\n,a);}选项:A、4B、1C、0D、运行时出错,无定值正确答案:【0】12、问题:若有如下定义和语句,则输出结果是()。int**pp,*p,a=10,b=20;p=a;p=b;pp=p;printf(%d,%d\n,*p,**pp);选项:A、10,20B、10,10C、20,10D、20,20正确答案:【20,20】13、填空题:#includestdio.hcharb[]=ABCD;main(){char*chp;for(chp=b;*chp;chp+=2)printf(%s,chp);printf(\n);}程序的运行结果为。正确答案:【ABCDCD】14、填空题:#includestdio.hvoidsub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,a);sub(7,a,b);sub(a,b,c);printf(%d,%d,%d\n,a,b,c);}程序的运行结果为。正确答案:【-5,-12,-7】15、填空题:#includestdio.hmain(){intk=2,m=4,n=6;int*pk=k,*pm=m,*p;*(p=n)=*pk*(*pm);printf(%d\n,n);}程序的运行结果为。正确答案:【8】16、填空题:#includestdio.hmain(){inta[10]={19,23,44,17,37,28,49,36},*p;p=a;printf(%d\n,p[3]);}程序的运行结果为。正确答案:【17】17、填空题:#includestdio.hmain(){intx[]={0,1,2,3,4,5,6,7,8,9};ints,i,*p;s=0;p=x[0];for(i=1;i10;i+=2)s+=*(p+i);printf(sum=%d\n,s);}程序的运行结果为。正确答案:【sum=25】18、填空题:#includestdio.hmain(){char*p[4]={CHINA,JAPAN,ENGLAND,GERMANY};char**pp;inti;pp=p;for(i=0;i4;i++,pp++)printf(%c,*(*pp+2)+1);}程序的运行结果为。正确答案:【JQHS】项目七作业项目七测验1、问题:下列程序中,结构体变量a所占内存字节数是()。unionU{charst[4];inti;longj;};structA{intc;unionUu;}a;选项:A、4B、5C、6D、8正确答案:【8】2、问题:设有以下说明语句:structex{intx;floaty;charz;}example;则下面的叙述中不正确的是()。选项:A、struct是结构体类型的关键字B、example是结构体类型名C、x,y,z都是结构体成员名D、structex是结构体类型名正确答案:【example是结构体类型名】3、问题:若有以下结构体定义:structexample{intx;inty;}v1;则()是正确的引用或定义。选项:A、example.x=10;B、examplev2;v2.x=10;C、structv2;v2.x=10;D、structexamplev2={10};正确答案:【structexamplev2={10};】4、问题:以下对结构体变量stu1中成员age非法引用是()。structstudent{intage;intnum;}stu1,*p;p=stu1;选项:A、stu1.ageB、student.ageC、p-ageD、(*p).age正确答案:【student.age】5、问题:以下对C语言中共用体类型数据的正确描述是()。选项:A、一旦定义了一个共用体变量后,即可引用该变量或该变量中的任意成员B、一个共用体变量中可以同时存放其所有成员C、一个共用体变量中不能同时存放其所有成员D、共用体类型数据可以出现在结构体类型定义中,但结构类型数据不能出现在联合类型定义中正确答案:【一个共用体变量中不能同时存放其所有成员】6、问题:根据以下定义能输出字母M的语句是()。structperson{charname[9];intage;};structpersonclass[10]={“John”,17,“Paul”,19,“Mary”,18,“Adam”,16};选项:A、printf(“%c\n”,class[3].name);B、printf(“%c\n”,class[3].name[1]);C、printf(“%c\n”,class[2].name[1]);D、printf(“%c\n”,class[2].name[0]);正确答案:【printf(“%c\n”,class[2].name[0]);】7、问题:以下程序的输出是()。#includestdio.hmain(){structcmplx{intx;inty;}cnum[2]={1,3,2,7};printf(%d\n,cnum[0].y/cnum[0].x*cnum[1].x);}选项:A、0B、1C、3D、6正确答案:【6】8、问题:已知字符0的ASCII代码值的十进制数是48,以下程序#includestdio.hmain(){union{inti[2];longk;charc[4];}r,*s=r;s-i[0]=0x39;s-i[1]=0x38;printf(%x\n,s-c[0]);}其输出结果是()。选项:A、39B、9C、38D、8正确答案:【39】9、问题:有以下结构体说明和变量的定义,指针p指向变量a,指针q指向变量b,则不能把结点b连接到结点a之后的语句是()。structnode{chardata;structnode*next;}a,b,*p=a,*q=b;选项:A、a.next=q;B、p.next=b;C、p-next=b;D、(*p).next=q;正确答案:【p.next=b;】10、填空题:若已定义:structnum{inta;intb;floatf;}n={1,3,5.0};structnum*pn=n;则表达式pn-b/n.a*++pn-b的值是。正确答案:【12】11、填空题:#includestdio.hunionchange{charc[2];inti;}un;main(){un.i=26984;printf(%d,%c\n,un.c[0],un.c[0]);}程序的运行结果为。正确答案:【104,h】12、填空题:#includestdio.hmain(){structExample{struct{intx;inty;}in;inta;intb;}e;e.a=1;e.b=2;e.in.x=e.a*e.b;e.in.y=e.a+e.b;printf(%d,%d,e.in.x,e.in.y);}程序的运行结果为。正确答案:【2,3】13、填空题:#includestdio.hstructks{inta;int*b;}s[4],*p;main(){intn=1,i;for(i=0;i4;i++){s[i].a=n;s[i].b=s[i].a;n=n+2;}p=s[0];p++;printf(%d,%d\n,(++p)-a,(p++)-a);}程序的运行结果为。正确答案:【5,3】14、填空题:#includestdio.hunionks{inta;intb;};unionkss[4];unionks*p;main(){intn=1,i;for(i=0;i4;i++){s[i].a=n;s[i].b=s[i].a+1;n=n+2;}p=s[0];printf(%d,,p-a);printf(%d,++p-a);}程序的运行结果为。正确答案:【2,3】项目八作业项目八测验1、问题:若fp是指向某文件的指针,且已读到文件的末尾,则表达式feof(fp)返回的值是()。选项:A、EOFB、-1C、非零值D、NULL正确答案:【非零值】2、问题:下述关于C语言文件操作的结论中,()是正确的。选项:A、对文件操作必须先关闭文件B、对文件操作必须先打开文件C、对文件操作顺序无要求D、对文件操作前必须先测试文件是否存在,然后再打开文件正确答案:【对文件操作必须先打开文件】3、问题:C语言可以处理的文件类型是()。选项:A、文本文件和数据文件B、文本文件和二进制文件C、数据文件和二进制文件D、以上答案都不完全正确答案:【文本文件和二进制文件】4、问题:C语言中系统的标准输出文件是指()。选项:A、显示器B、键盘C、硬盘D、U盘正确答案:【显示器】5、问题:在C语言的文件存取方式中,文件()。选项:A、只能顺序存取B、只能随机存取(也称直接存取)C、可以是顺序存取,也可以是随机存取D、只能从文件的开头存取正确答案:【可以是顺序存取,也可以是随机存取】6、问题:如果需要打开一个已经存在的非空文件“FILE”,并向文件尾添加数据,正确的打开语句是()。选项:A、fp=fopen(FILE,r);B、fp=fopen(FILE,r+);C、fp=fopen(FILE,w+);D、fp=fopen(FILE,a+);正确答案:【fp=fopen(FILE,a+);】7、问题:函数调用语句fseek(fp,-10L,2);的含义是()。选项:A、将文件位置指针移动到距离文件头10个字节处B、将文件位置指针从当前位置向文件尾方向移动10个字节C、将文件位置指针从当前位置向文件头方向移动10个字节D、将文件位置指针从文件末尾处向文件头方向移动10个字节正确答案:【将文件位置指针从文件末尾处向文件头方向移动10个字节】8、问题:在高级语言中,对文件操作的一般步骤是()。选项:A、打开文件→操作文件→关闭文件B、操作文件→修改文件→关闭文件C、读写文件→打开文件→关闭文件D、读文件→写文件→关闭文件正确答案:【打开文件→操作文件→关闭文件】9、问题:若要以“a+”方式打开一个已存在的文件,则以下叙述正确的是()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四川成都市新都区人民法院上半年招聘聘用制人员2人备考题库含答案详解
- 2026河南省烟草专卖局(公司)高校毕业生招聘190人备考题库含答案详解(基础题)
- 2026江西上饶婺源县蚺城街道办事处综合行政执法队编外辅助人员招聘4人备考题库附答案详解(培优b卷)
- 2026兴业银行南平分行春季校园招聘备考题库及答案详解(新)
- 公安安保值守工作制度
- 中国航空工业工作制度
- j纪检监察组工作制度
- 三矿推行四六工作制度
- 卫生部医院工作制度
- 主播公司工作制度范本
- APQC跨行业流程分类框架 (8.0 版)( 中文版-2026年4月)
- 2026山东青岛日报报业集团(青岛日报社)招聘4人备考题库附答案详解(完整版)
- 2026年及未来5年市场数据中国翻译机构行业市场需求预测及投资规划建议报告
- 建筑工地 宿舍管理制度
- 2026年南阳工艺美术职业学院单招职业倾向性测试题库附答案详解(黄金题型)
- 【MOOC】电路基础-西北工业大学 中国大学慕课MOOC答案
- HY/T 174-2014水下营养盐自动分析仪
- GB/T 37361-2019漆膜厚度的测定超声波测厚仪法
- GB 22134-2008火灾自动报警系统组件兼容性要求
- 生活垃圾四分类管理台账
- 流感嗜血杆菌课件
评论
0/150
提交评论