![2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第1页](http://file4.renrendoc.com/view/4de617b14911dca4bac1622126bf1162/4de617b14911dca4bac1622126bf11621.gif)
![2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第2页](http://file4.renrendoc.com/view/4de617b14911dca4bac1622126bf1162/4de617b14911dca4bac1622126bf11622.gif)
![2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第3页](http://file4.renrendoc.com/view/4de617b14911dca4bac1622126bf1162/4de617b14911dca4bac1622126bf11623.gif)
![2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第4页](http://file4.renrendoc.com/view/4de617b14911dca4bac1622126bf1162/4de617b14911dca4bac1622126bf11624.gif)
![2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第5页](http://file4.renrendoc.com/view/4de617b14911dca4bac1622126bf1162/4de617b14911dca4bac1622126bf11625.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2021-2022年四川省巴中市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)学校:________班级:________姓名:________考号:________
一、单选题(20题)1.有以下程序:
程序的运行结果是()。
A.y=0B.y=1C.y=2D.y=3
2.以下程序的输出结果是()。#include<stdio.h>main(){intn=4;while(n--)printf("%d",--n);}
A.20B.31C.321D.210
3.数据在计算机存储器内表示时,如果元素在存储器中的相对位置能反映数据元素之间的逻辑关系,则称这种存储结构为()。
A.存储结构B.逻辑结构C.顺序存储结构D.链式存储结构
4.程序运行后的输出结果是()。A.3B.4C.1D.9
5.有如下程序:main{inta=2,b=-1.c=2;if(a<0)if(b<0)c=0;elsec++;printf("%d\n",c);}该程序的输出结果是()。A.0B.1C.2D.3
6.有以下程序:main{intx,i;for(i=l;i<=50;i++){x=i:if(x%2=0)if(x%3=0)if(X%7=0)printf(”%d,i)”;}}输出结果是()。A.28B.27C.42D.4l
7.以下选项中,值为1的表达式是()。
A.1-‘0’B.1-‘\0’C.‘1’-0D.‘\0’-‘0’
8.若串S=,software,其子串的数目是()。
A.8B.37C.36D.9
9.以下叙述中错误的是()。
A.C语句必须以分号结束
B.复合语句在语法上被看作一条语句
C.空语句出现在任何位置都不会影响程序运行
D.赋值表达式末尾加分号就构成赋值语句
10.以下选项中表示空函数的是()。
A.intfun(){return0;}
B.intfun();
C.intfun(){}
D.intfun(inta,intB){return1;}
11.若k是int类型变量,且有以下for语句:for(k=-1;k<O;k++)printf("****\n");下面关于语句执行情况的叙述中正确的是()。、A.循环体执行一次B.循环体执行两次C.循环体一次也不执行D.构成无限循环
12.下面描述中,符合结构化程序设计风格的是()。
A.使用顺序、选择和重复(循环.三种基本控制结构表示程序的控制逻辑
B.模块只有一个入口,可以有多个出口
C.注重提高程序的执行效率
D.不使用goto语句
13.数组A中,每个元素的长度为4个字节,行下标i从1到8,列下标j从1到10,从首地址SA开始连续存放在存储器内,该数组按行存放时,元素A[8][5]的起始地址为()。
A.SA+292B.SA+296C.SA+300D.304
14.有以下程序:#include<stdio.h>structS{inta,b;)data[2]=10,100,20,200);main(){structSp=data[l];printf("%d\n",++(p.a));}程序运行后的输出结果是()。A.10B.11C.20D.21
15.下列叙述中正确的是()。
A.在C语言中,预处理命令行都以“#”开头
B.预处理命令行必须位于C语言源程序的起始位置
C.“include<stdio.h>”必须放在C语言程序的开头
D.C语言的预处理不能实现宏定义和条件编译的功能
16.在一棵高度为5的理想平衡树中,至少含有16个结点,最多含有()个结点。
A.31B.32C.30D.33
17.以下程序段运行后x的值为()。inti,j,x=0;for(i=3;i>=1;i--)for(j=1;j<=i;j++)x=x+2A.8B.14C.10D.12
18.下列程序段的时间复杂度为()。A.O(i+j)B.O(n)C.O(n2)D.O(i*j)
19.一个队列的入队序列是a,b,c,d,则出队序列是()。
A.a,b,c,dB.a,c,b,dC.d,c,b,aD.a,c,b,d
20.下列语句中,()是错误的。A.x=x+1;B.x=x+y;C.x+y=x;D.x=4;
二、2.填空题(20题)21.某二叉树中度为2的节点有18个,则该二叉树中有()个叶子节点。
22.以下程序是求矩阵a、b的和,结果存入矩阵c中,请填空。#include<stdio.h>main(){inta[4][4]={1,2,6,7},{0,4,2,-8},{1,4,5,2},{2,4,6,8}};intb[4][4]={{-4,0,7,9},{2,-7,7,4),{6,9,0,1),{8,8,6,5)};inti,j,c[4][4];for(i=0;i<4;i++)for(j=0;j<4;j++)c[i][j]=();for(i=0;i<4;i++)for(j=0;j<4;j++)printf("%d",c[i][j]);}
23.下列语句能循环______次。
ints=12;
while(s);
--s;
24.数据的______结构在计算机存储空问中的存放形式称为数据的存储结构或物理结构。
25.函数pi的功能是根据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+…+1(n*n)
现在请你在下面的函数中填空,完成求π的功能。
#include"math.h"
{doubles=0.0;longi;
for(i=1;i<=n;i++)s=s+【】;
return(sqrt(6*3));
}
26.下列程序的输出结果是【】。
#include<stdio.h>
main()
{charb[]="Helloyou";
b[5]=0;
printf("%s\n",b);
}
27.计算机中存储容量的基本单位是字节,它的英文名称是【】。
28.在C语言中,字符的比较就是对它们的【】码进行比较。
29.当数据的物理结构(存储结构)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的_______。
以下程序的输出结果是#include<stdio.h>voidprt(int*x,int*y,int*z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}main(){inta=10,b=40,c=20;prt(&a,&b,&c);prr(&a,&b,&c);}
30.以下程序输出的最后一个值是【】
intff(intn)
{staticintf=1;
f=f*n;
returnf;
}
main()
{inti;
for(i=1;i<=5;i++)printf("%d\n",ff(i));
}
31.下面程序的运行结果是【】。
intf(inta[],intn)
{if(n>1)returna[0]+f(&a[1],n-1);
elsereturna[0];
]
main()
{intaa[3]={1,2,3),s;
s=f(&aa[0],3);printf("%d\n",s);
}
32.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为【】。
33.软件测试的方法有动态测试、静态测试和【】13种。
34.以下程序的运行结果是【】。
main()
{inta=2,b=7,c=5;
switch(a>0)
{
case1:
switch(b<0)
{case1:printf("@");break;
case2:pnntf("!");break;
}
case0:
switch(c==5)
{case0:pnntf("*");break;
case1:printf("#");break;
case2:printf("$");break;
}
default:printf("&");
}
printf("\n");
}
35.为了便于对照检查,测试用例应由输入数据和预期的【】两部分组成。
36.数据模型按不同的应用层次分为三种类型,它们是______数据模型、逻辑数据模型和物理数据模型。
37.数据结构包括数据的逻辑结构、数据的【】以及对数据的操作运算。
38.有以下程序:
#include<stdio.h>
intsub(intn)
{return(n/10+n%10);}
main()
{intx,y;
seanf("%d",&x);y=sub(sub(sub(x)));
printf("%d\n";,y);
}
若运行时输入:1234<回车>,程序的输出结果是【】。
39.栈的基本运算有三种:入栈、退栈和【】。
40.以下程序的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。请填空。#include<stdio.h>main(){longs,t,s1=10;pfintf("\n.Pleaseenters:");scanf("%1d",&s);t=s%10;while(s>0){s=s/100;t=();s1=s1*10;}printf("Theresultis:%1d\n",t);}
三、1.选择题(20题)41.若有以下定义和语句charc1='b',c2='e'printf("%d,%c\n",c2-c1,c2-'a'+A);则输出结果()
A.2,MB.3,EC.2,ED.输出项与对应的格式控制不一致,输出结果不确定
42.已知有结构体:structsk{inta;floatb;}data,*p;若有p=&data,则对data的成员a的正确引用是()。
A.struct是结构体类型的关键字
B.st是结构体类型名
C.x、y、z都是结构体成员名
D.structstr是结构体类型名
43.用scanf("%d,%d",&a,&b)输入数据时,下面输入法中,正确的是______。
A.123,4B.1234C.123;4D.123:4
44.下面程序的输出结果是()#definePI3.1415#defineARE(x)PI*x*xmain(){intr=2;printf("%f",ARE(r+1));}
A.28.26B.28.26C.9.28D.9.28
45.出下列程序执行后的输出结果是______。mare(){intm[][3]={1,4,7,2,5,8,3,6,9};inti,k=2;for(i]0;i<3;i++){printf(("%d",m[k][i]);}}
A.456B.258C.369D.789
46.有以下程序:#include<stdio.h>main(){eharc1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getehar();c6=getchar();putehar(c1);putehar(c2);printf("%c%c\n",c5,c6);}23<回车>45678<回车>
A.1267B.1256C.1278D.1245
47.若有下列定义(设int类型变量占2个字节):
inti=8,j=9;
则下列语句:
printf("i=%u,j=%x\n".i,j);
输出的结果是()。
A.i=8,j=9B.8.9C.89D.i=8,i=8
48.一个C语言的源程序中,______。
A.必须有一个主函数B.可以有多个主函数C.必须有主函数和其他函数D.可以没有主函数
49.现有如下程序段#include"stdio.h"main(){inta[5][6]={23,3,65,21,6,78,28;5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1};inti=0,j=5;printf("%d\n",*(&a[0][0]+2*i+j-2));}则程序的输出结果为
A.21B.78C.23D.28
50.软件的可维护性度量可分解为多种因素的度量,下列选项中的______是可维护性度量的内容。
①可测试性
②可移植性
③可复用性
④可靠性
A.全部B.①和③C.①、②和④D.②和④
51.有以下程序
#include<stdio.h>
intfun(chars[])
{intn=0;
while(*s<=′9′&&*s>=′0′){n=10*n+*s-′0′;s++;}
return(n);
}
main()
{chars[10]={′6′,′1′,′*′,′4′,′*′,′9′,′*′,′0′,′*′};
printf("%d\n",fun(s));
}
程序的运行结果是
A.9B.61490C.61D.5
52.设有说明语句如下:staticcharstr[]="Beijing";若执行下列输出语句:printf("%d\n",strlen(strcpy(str,"China")));则输出结果为()。
A.5B.7C.12D.14
53.以下合法的赋值语句是()
A.x=y=100B.d--;C.x+y;D.c=int(a+b);
54.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是()。A.概要设计B.详细设计C.可行性分析D.需求分析
55.以下程序段的输出结果是chars[]="\\141\141abc\t";printf("%d\n",strlen(s));
A.9B.12C.13D.14
56.设有如下说明:typedefstruct{intn;charc;doublex;)STD;则以下选项中,能正确定义结构体数组并赋初值的语句是()。
A.STDtt[2]={{1,'A',62},{2,'B',75}};
B.STDtt[2]={1,"A",62},2,"B",75};
C.stmctt[2]={{1,'A'),{2,'B'}};
D.structt[2]={{1,"A",62.5),{2,"B",75.0}};
57.有以下程序:main(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;}rintf("%d\n",m);}程序运行后的输出结果是()。
A.1B.2C.3D.4
58.在软件开发过程中,软件结构设计是描述______。
A.数据存储结构B.软件体系结构C.软件结构测试D.软件控制过程
59.若有以下定义和语句;inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;
A.p+=2,*(p++)B.p+=2,*++pC.p+=3,*p++D.p+=2,++*p
60.请读程序:#include<stdio.h>inta[]={2,4,6,8};main(){inti;int*p=a;for(i=0;i<4;i++)a[i]=*p++;printf("%d\n”,a[2]);}上面程序的输出结果是()
A.6B.8C.4D.2
四、选择题(20题)61.
62.有以下程序:
程序执行后的输出结果是()。
A.x=4B.X=8C.x=6D.x=12
63.
64.
65.有如下程序
#include"stdio.h"
voidfun(int*a,int*b)
{intm;
m=(*a+*b)*(*a+*b);
m+=(*a-*b)*(*a-*b);
printf("%d\n",m);}
main()
{inta=5,b=6,*x=&a,*y=&b;
fun(x,y);}
程序执行后输出的结果为
A.120B.121
C.122D.123
66.
67.
68.一棵二叉树共有25个结点,其中5个是叶子结点,则度为l的结点数为()。
A.16B.10C.6D.4
69.
70.
71.设x为int型变量,则执行以下语句后,x的值为()。x=10;x=x-=x-x;
A.10B.20C.40D.30
72.以下程序运行后的输出结果是()。
A.zB.0C.元素Ch[5]地址D.字符y的地址
73.有以下程序
74.
75.下列程序的输出结果是()。
char*p1="abcd",*p2="ABCD",str[50]="xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);
A.xyabcABB.abcABzC.ABabczD.xycdBCD
76.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指()
A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程
77.有以下程序:
程序运行后的输出结果是()。.
A.3,3B.1,1C.2,3D.1,2
78.有下列程序:
main
{inty=10;
do{y--;}while(--y);
printf("%d\n",--y);
)
当执行程序时,输出的结果是()。
A.-1B.1C.4D.0
79.设变量均已正确定义,若要通过
scaIIf(”%d%c%d%c”,&;al,&;el,&;a2,&;c2);
语句为变量al和a2赋数值l0和20,为变量cl和c2赋字符x和Y。以下所示的输入形式中正确的是()。(注:口代表空格字符)
80.有以下程序:
#include<stdio.h>
main()
{inta=0,b=0,c=0;
c=(a=a=5);(a=b,b+=4);
printf("%d,%d,%d\n",a,bc);
}
程序运行后的输出结果是()。
A.0,4,5B.4,4,5C.4,4,4D.0,0,0
五、程序改错题(1题)81.下列给定程序、中,函数proc()的功能是:先将字符串s中的字符按顺序存放到t中,然后把s中的字符按正序连接到t的后面。例如,当s中的字符串为WXYZ时,则t中的字符串应为WXYZWXYZ。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:
六、程序设计题(1题)82.使用VC++2010打开考生文件析下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun(),tt指向一个M行N列的二维数组,求出二维数组每列中值最大的元素,并依次放入pp所指的一维数组中。二维数组中的元素已在主函数中给出。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#defineM3#defineN4voidfun(inttt[M][N],intpp[N]){}voidmain(){ intt[M][N]={{68,32,54,12},{14,24,88,58},{42,22,44,56}}; intp[N],i,j,k; ystem(“CLS”); printf(“Theoriginaldatais:\n”); for(i=0;i<=""p=""> { for(j=0;j<=""p=""> printf(“%6d”,t[i][j]); printf(“\n”n); } fun(t,p); printf(“\nTheresultis:\n”); for(k=0;k<n;k++)<p=""></n;k++)<> printf(“%4d”,p[k]); printf(“\n”);}
参考答案
1.D在程序中指针变量P初始指向a[3],执行P减1后,P指向a[2],语句y=*P的作用是把a[2]的值赋给变量y,所以输出为y=3。
2.A解析:n--是先使用后自减,--n是先自减后使用。n=4时,执行n--后,n变为3,执行--n后,n变为2,所以,第一次输出时,n为2;同上过程,第二次输出时,n为0。
3.C
4.B[解析]每次内循环只循环一-次就结束,第一次外循环时t=t+b[][0][]=1+b[0][0]=1+0=1;第二次外循环时t=t+b[1][b[1][1]]=1+b[1][1]=1+1=2;第三次外循环时t=t+b[][2][]=2+b[2][2]=2+2=40
5.Celse与离它最近的if构成if…else语句,而当a为2时,第一个if语句不成立,因此什么也不做,即c的值仍然为2,故选择C选项。
6.C只有当3个if条件同时成立,即能够同时被2、3、7整除时,才输出i的值,而从0到50能够同时被2、3、7整除的数只有42,故选择C选项。
7.B字符‘\\0’为空值,其ASCII值为0,所以B选项的值为1。字符‘0’的ASCII值为48,所以A、C、D选项的值均不为1。故本题答案为B选项。
8.B
9.C解析:C语句必须以分号结束,选项A是正确的。复合语句在语法上被看作一条语句,选项B也是正确的。空语句也算是一条语句,因此如果空语句出现在条件或者循环语句中,一样会被当作条件子句或者循环体来看待,所以选项c是错误的。赋值表达式末尾加分号就构成赋值语句,选项D正确。故本题应该选择C。
10.C空函数是函数体没有执行语句的函数。选项A、D不是空函数;选项B是函数的声明;只有选项C是空函数。故本题答案为C选项。
11.A本题考查简单的for语句,程序中当k<0时循环才执行,所以答案选择A。
12.A解析:结构化程序设计方法的四条原则是:①自顶向下;②逐步求精;③模块化;④限制使用goto语句。“自顶向下”是指在程序设计时,先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。“逐步求精”是指对复杂问题应设计一些子目标作过渡,逐步细节化。“模块化”是指一个复杂问题由若干稍简单的问题构成;解决这个复杂问题的程序,也应由若干稍简单问题的小程序组成。
13.B
14.D考查结构体的应用,答案为21。
15.A预处理命令以“#”开头,一般在源文件的最前面书写,但不是必须在起始位置书写,所以B、C选项错误。C语言的预处理能够实现宏定义和条件编译的功能,所以D选项错误。故本题答案为A选项。
16.A
17.D
18.C
19.A
20.C
21.19
22.a[i][j]+b[i][j]a[i][j]+b[i][j]解析:求两个矩阵的和只要将对应元素相加即可。
23.无限无限解析:分析程序“while(s)”语句后面有一个“;”不能执行后面的语句,只是执行空语句,所以s=12保持不变,因此,没有条件限制的能循环无限次(即死循环)。
24.逻辑逻辑解析:数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构或物理结构。
25.1.0/(i*i)或(double)1/(i*i)1.0/(i*i)或(double)1/(i*i)解析:表达式1+1/(2*2)+1/(3*3)+…+1(n*n)可写为1/(1*1)+1/(2*2)+1/(3*3)+…+1(n*n)
n
即;∑1÷(i×i)
i=1
对应的C语言的表达式s=s+1.0/(i*i)。注:必须要写成1.0的形式,否则1/(i*i)返回值为其值截尾取整,即恒为0。
26.HelloHello解析:语句b[5]=0;相当于语句b[5]='\\0';且'\\0'为字符串结束标志,输出时遇到'\\0'就停止输出。
27.Brte
28.ASCⅡ
29.B
30.120120解析:静态变量的类型说明符是static,静态局部变量属于静态存储方式,它具有以下特点:
①静态局部变量属于静态存储类别,在静态存储区内分配存储单元。在程序整个运行期间都不释放。
②对静态局部变量是在编译时赋初值的,即只赋初值—次,在程序运行时它已有初值。以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的值。
③如在定义局部变量时不赋初值的话,则对静态局部变量来说,编译时自动赋初值0(对数值型变量)或空字符(对字符变量)。(注意:C语言中的非静态变量在定义时,系统并不会自动给它赋初值)
④虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的。
本题中函数的功能是:与for语句一起求一个整数的阶乘。
31.66解析:经过分析将递归函数写成其数学表达式如下:
f(&a,n)=a[0]+f(&a[1],n-1)n>1
f(&a,n)=a[0]n=1
本题中定义了一个长度为3的数组aa并初始化。接着调用递归函数f(),由上面的数学表达式以计算其返回值s=1+2+3=6,所以空白处应该填6。
32.上溢上溢解析:入队运算是指在循环队列的队尾加入一个新元素。这个运算有两个基本操作:首先将队尾指针进一(即rear=rear+1),并当rear=m+1时置rear=1;然后将新元素插入队尾指针指向的位置。当循环队列非空(s=1)时且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算,这种情况称为“上溢”。
33.正确性测试正确性测试
34.#&解析:首先看最外面的switch,其表达式为a>0,结果为真(即1),从case1:标号处开始执行。这里又是一个switch语句,其表达式为b<00,结果为假(即0),由于没有case0:或default:标号,所以直接跳过此switch语句。因为没有遇到break;语句,所以继续执行进入内部第2个switch语句,其表达式为c==5,结果为真,从case1:标号处开始执行,输出一个#,遇到break;语句,跳出该内部switch语句,最后执行default:标号后的输出语句输出一个&后,整个外部switch语句执行完毕。程序最后输出的换行符不会显示,所以本题应该填#&。
35.输出结果输出结果解析:注意:测试的基本方法和步骤。
36.概念概念
37.存储结构数据结构包括3个方面,即数据的逻辑结构、数据的存储结构及对数据的操作运算。
38.1010解析:函数sub递归调用的返回值被作为再次调用sub函数的实参传给函数sub的形参,共进行3次递归调用。第1次调用sub(1234)的返回值为1234/10+1234%10=127;第2次调用sub(127)的返回值为127/10+127%10=19;第3次调用sub(19)的返回值为19/10+19%10=10。所以程序的输出为10。
39.读栈顶元素读栈顶元素解析:栈的基本运算有三种:入栈、退栈和读栈顶元素。
入栈运算是指在栈顶位置插入一个新元素。这个运算有两个基本操作:首先将栈顶指针进一(即top加1),然后将新元素插入到栈顶指针指向的位置。
退栈运算是指取出栈顶元素并赋给一个指定的变量。这个运算有两个基本操作:首先将栈顶元素(栈顶指针指向的元素)赋给一个指定的变量,然后将栈顶指针退一(即top减1)。
读栈顶元素是指将栈顶元素赋给一个指定的变量。这个运算不删除栈顶元素,只是将它的值赋给一个变量。
40.s%10*s1+t
41.B
42.B解析:本题主要考查结构类型的定义:struct是结构体类型的关键字;structstr是结构体类型名;x、y、z都是结构体成员名;st是结构变量名。
43.A
44.D
45.C解析:根据二维数组的定义得出:m[0][0]=1,m[0][1]=4,m[0][2]=7,m[1][0]=2,m[1][1]=5,m[1][2]=8,m[2][0]=3,m[2][1]=6,m[2][2]=9,所以本题的输出是第3行的值m[2][0],m[2][0],m[2][2],即369。
46.D解析:getchar函数只能接收一个字符,即使输入多个字符也只能将第一个字符读入。当输入123<回车>时:seanf函数分别读人字符'1'、'2'、'3'、'<回车>';再输入45678<回车>,则getehar读人字符'4'赋值给c5,字符'5'赋值给c6,所以输出结果为1245。
47.A解析:本题考查函数printf()的格式。“%x”表示以十六进制输出整型数据;“%u”表示以十进制无符号型输出整型数据。printf函数中格式说明符之前插入的任何字符都原样输出。
48.A
49.A解析:通过地址来引用二维数组,若有以下定义:inta[3][4],i,j;且当0≤i≤3,0≤j<4则可以有以下几种方式来引用数组中的第i行,第j列的元素:\ue008a[i][j]\ue009,\ue008*(a[i]+j),\ue009*(*(a+i)+j),(*(a+i))[j],*(&a[0][0]+4*i+j)。表达式&a[0][0]+2*i+j-2相当于是地址&a[0][0]加上多少偏移量。
50.C
51.C解析:在fun函数中,while循环的功能是:逐个取字符数组s的字符判断其是否是数字。若是则将其作为个位数字保存到变量n中,n的原数据的各个数位将相应左移一个10进制位。当指针s指向数组的第3位时,循环条件不成立,循环结束,返回n的值,输出n的值为61。
52.A解析:本题考查求字符串的长度。数组str初始化的长度是7,使用strcpy函数将新字符串赋给str后,strlen函数返回的是新字符串的字符个数5。
53.B解析:选项A的结尾没用‘;’,所以不是一条语句:选项C中的表达式不会改变任何变量的内容,也不是合法的赋值语句;选项D有语法错误,int应该加上括号。所以,4个选项中只有选项B符合题意,运行后d的内容被减一。
54.D通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说:软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。
软件生命周期的主要活动阶段为:
①可行性研究和计划制定。确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可行方案,制定完成开发任务的实施计划。
②需求分析。对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件,规格说明书及初步的用户手册,提交评审。
③软件设计。系统设计人员和程序设计人员应该在反复理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。
④软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。
⑤软件测试。在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告。
⑥运行和维护。将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
55.A解析:本题考核的知识点是字符串的长度。字符数组中可以存放字符串,但字符数组的长度并不是字符串的长度,字符串的长度是指字符数组中存放的有效字符个数,即,\'\\0\'之前的字符数。字符数组s中依次存放的字符是:\'\\\\'1'4'1'141'a'b'c'\\t\'和最后一个字符串结束标记\'\\0\',故字符串的长度是9。所以,4个选项中A为所选。
56.A解析:本题定义了一个结构体类型并自定义类型名为STD,用户自定义类型后,就可以利用它进行变量与数组的定义。定义的方法,与C语言中其他类型的定义完全一样,定义结构型数组并赋初值时,每个元素用一对{和}括起来,字符型元素用,括起来,选项A、B、C、D中只有选项A符合条件。所以,A选项为所选。
57.A解析:本题中首先计算switch后面括号里的表达式a%3,即15%3为0;执行case0:后面的语句m++:m自加1,即m为1遇到break语句;然后跳出switch语句,所以最后输出的m的值为1。所以选项A正确。
58.B解析:从工程管理解度来看,软件设计分两步完成:概要设计和详细设计。概要设计(又称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式。
59.A解析:引用一个数组元素,可以用:(1)下标法,如a[i]形式;(2)指针法,如*(a+i)或*(p+i)。数组的下标从0开始,值为3的数组元素是a[2]。B、C的内容为a[3],D将a[2]前自加,结果为4。
60.A
61.C
62.Beoulinue的作用是跳出循环体中剩余的1语句而进行下一次循环。第一次执行外循环i的值为0,执行|x++,x的值变为l,第一次执行内层循环j的值为0,不满足if1条件,执行x++,x的值变为2,第二次内循环j的值为1,if条1件成立,跳出本次循环,第三次执行内循环j的值为2,不满足lif条件,x的值变为3,第四次执行内循环j的值为3满足条件1跳出本次内循环,x的值加l,即为4,第一次外循环结束。第1二次执行外循环时,同理,i的值被加了,4次,变为8,所以选择I,B选项。
63.B
64.B
65.C在本题程序中,首先定义了一个fun函数,函数带有两个指针变量的形参,在程序体中,定义一个整型变量m用来保存计算的结果,然后执行第一条运算语句,并将运算结果保存至变量m,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度拆除工程风险评估及应急预案
- 2025年度新能源项目场站建设与运营管理合同
- 2025年度电池储能系统设计与集成服务合同
- 2025年度商业秘密保护保密劳动合同及保密协议
- 2025年度城市道路临时停车位租赁及交通管理合同
- 2025年度彩钢板隔墙快速安装服务合同
- 2025年度体育赛事赞助商提成协议
- 2025年冷墩钢合作协议书
- 如何选择理财顾问计划
- 多元文化背景下的艺术教育计划
- 2025年业务员工作总结及工作计划模版(3篇)
- 必修3《政治与法治》 选择题专练50题 含解析-备战2025年高考政治考试易错题(新高考专用)
- 2024年连云港市赣榆区区属国企对外招聘笔试真题
- 海南省海口市2024-2025学年八年级上学期期末考试数学试题(含答案)
- 二零二五版电商企业兼职财务顾问雇用协议3篇
- 课题申报参考:流视角下社区生活圈的适老化评价与空间优化研究-以沈阳市为例
- 17J008挡土墙(重力式、衡重式、悬臂式)图示图集
- 自动化生产线运行与维护完整版课件(全)
- 道教系统诸神仙位宝诰全谱
- (完整版)周工作总结计划表格(全)
- 酒店夜审 工作流程
评论
0/150
提交评论