第1题
编写一程序,求一维数组中下标为偶数的元素之和。 编程提示: 1.定义一个数组a并初始化。 2.定义一个整型变量sum,存放下标为偶数的元素和,并初始化为0。 3.从数组的第0个元素开始,每次循环变量递增2,一直到数组的最后一个元素,将其累加到sum变量。 4.输出sum变量即为下标为偶数的元素之和。/* c6-6.c 求一维数组中下标为偶数的元素之和*/ #include "stdio.h" int main( ) { int i,sum=0; /* 初始化sum为0 */ int a[]={2,3,4,5,6,7,8,9}; for(i=0; i<8; ) * 请补充完整循环语句 sum+="a[i];" printf("sum="%d\n",sum);" return 0;>
第2题
编写程序,输出一维数组a中的元素最小值及其下标。 编程提示: 1.定义一个整型变量存放最小值下标,将其初始化为0 ,例如:int p=0;即从数组第零个元素开始判断。 2.通过循环,依次判断数组中的每一个元素a[i]是否小于a[p],如果是,则将p和a[p]的值作相应的改变。/* c6-5.c 输出一维数组中元素的最小值及其下标*/ #include "stdio.h" int main( ) { int i,m,p,a[10]={9,8,7,6,1,3,5,18,2,4}; /* m为最小值,p为其下标 */ m=a[0]; p=0; for(i=1;i<10;i++) if { ; p="i;}" * 请补充完整此语句 printf("%d,%d\n",a[p],p); 输出一维数组a中的最小值及其下标 return 0;>
第3题
B、"int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值为9
C、对于"int x[10];"它的元素初值是不确定的
D、"int x[10]={1,2,3,4,5};"是不合法的,因为数组长度为10,而初始值仅有5个
第4题
A.int a[5]=(0,0,0,0,0);
B.int a[5]={};
C.int a[]={0,0,0,0,0};
D.int a[]={5*0};
第5题
A. 数组a包含9个元素
B. a[1][2]的初值为6
C. a[2][2]的初值为0
D. 在程序中引用a[2][3]会导致编译错误
第6题
整。请按要求完成下列操作,将程序补充完整。
(1)完成类queue的无参数的构造函数的定义,要求把数据成员bl和el都初始化为0,同时输出queue initialized。请在注释“//**1**”之后添加适当的语句。
(2)完成类queue的成员函数qput(int j)的定义,它的功能是把新的元素加入队列,过程是先依据bl的值判断数组是否已经满了,如果是就输出queue is full,否则bl自加一,并且把参数j的值存入bl指向的数组元素中,请在注释“//**2**”之后添加适当的语句。
(3)完成类queue的成员函数qget()的定义,它的功能是把队列开头的元素提取出队列,并返回该值,过程是先比较el和bl的值判断队列是否已空,如果是就输出queue is empty,否则el自加一,并且把el指向的数组元素返回,请在注释“// **3**”之后添加适当的语句。
程序输出结果如下:
queue initialized
queue initialized
33 11
44 22
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test26_3.cpp清单如下:
include<iostream.h>
class queue
{
int q[100];
int bl,el;
public:
queue( );
void qput(int j);
int qget( );
};
queue::queue( )
{
// **1**
}
void queue::qput(int j)
{
// **2**
{
cout<<"queue is full\n";
return;
}
bl++;
q[bl]=j;
}
int queue::qget( )
{
// **3**
{
cout<<"queue is empty\n";
return 0;
}
el++;
return q[el];
}
void main( )
{
queue aa,bb;
aa.qput(11);
bb.qput(22);
aa.qput(33);
bb.qput(44);
cout<<aa.qget()<<" "<<aa.qget()<<"\n";
cout<<bb.qget()<<" "<<bb.qget()<<"\n";
}
第7题
有如下程序
#include(iostream.h>
voidmain( )
{charch[2][5]={"6937","8254"),*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j])'\0';j+=2)
s=10*s+p[i][j]一'0';
cout<<S;}
该程序的输出结果是( )。
A.69825
B.63825
C.6385
D.693825
【我提交的答案】: D |
【参考答案与解析】: 正确答案:C |
C。【解析】该题主要要搞清楚以下几点:①定义了一个指针数组char*p[2]后,程序中第一个循环“for(i=0;i(2;i++)p[i]=ch[i]”的作用是使指针数组的p[0]元素(它本身是一个指针)指向了二维数组ch的第一行字符串,并使指针数组的p[1]元素指向了二维数组ch的第二行字符串,这样,就使指针数组P和二维数组ch建立起了一种对应关系,以后对二维数组ch的某个元素的引用就有两种等价的形式:ch[i][j]或p[i][j]。②对二维数组ch的初始化,使其第一行ch[0]中存入了字符串“6937”,第二行ch[1]中的内容为字符串“8254”。③程序中第二个循环中的循环体“s=s*10+p[i][j]-'0'”的功能是这样的,每执行一次,将s中的值乘以10(即将s中的数值整体向左移动一位,并在空出来的个位上添一个0),再将当前p[i][j]中的字符量转换为相应的数字,然后把这个数字加到s的个位上。④注意到内层循环的循环条件p[i][3]>'\0'是指p[i][j]中的字符只要不是字符串结束标志'\0'就继续循环,语句j+=2;是使下标j每次增加2,即一个隔一个地从p[i]所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p[0]所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p[1]所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果s中的值应该是6385。
第8题
[说明]
在表单的多行文本域中显示打字效果,即先显示一个光标,再显示一个字,然后循环显不,
[HTML 文本]
<html>
<!--省略部分为HTML文本框-->
<script. language="JavaScript"> //JavaScript区域开始标识
var m=0; //定义变量m,并赋初值0
function tl(){ //声明一个数组,并对其进行初始化
m=(1):
for(i=0;i<m;i++)
(2):
}
t1=mew tl(
"能熟练使用一种网络操作系统、一种浏览器软件和一种电子邮件收发与管理软件”,
"能熟练使用一种网页制作软件制作一般的网页”,
"能熟练使用HTML语言和JavaScript语言制作一般的网页”,
): //定义对象
var x=0:pos=0; //定义变量并赋初值
var 1=t1[o].1ength //定义变量1,并将对象t1数组元素的长度值赋给变量1
function tt() {
document.form.tf.value=ti[x].subswing(0.pos)+"-";
//将数组t1中元素从0到“pos'’的值显示出来。
“form"是表单的名, “t1是多行文本输入域的名。
If((3)){ //如果数组t1中一个元素显示完毕,则显示下一个,否则继续显示
(4):
setTimeout("tt()",400): //设置定时器,值越小速度越快
if(++x==m){ //如果数组d中所有元素均显示完毕,则从头显示,否则继续显示
(5);
1=t1[x].length;
}
else{
setTimeout("tt0", 400):
}
}
</script>
<body>
<form. name=form>
<text,area name=ff rows=3 cols=38></textarea>
</form>
<!--省略部分为HTML 文本框-->
</html>
第9题
阅读下列说明和HTML文本,分析其中嵌入的JavaScript脚本,将应填入(n)处的语句写在答题纸的对应栏内。
[说明]
在表单的多行文本域中显示打字效果,即先显示一个光标,再显示一个字,然后循环显示。
【HTML文本】
<html>
<!省略部分为HTML文本框>
<script. language="JavaScript">//JavaScript区域开始标识
vat m=0;//定义变量m,并赋初值0
function tl(){//声明一个数组,并对其进行初始化
m= (1) ;
for(i=0;i<m;i++)
(2) ;
}
tl=mew tl(
"能熟练使用一种网络操作系统、一种浏览器软件和一种电子邮件收发与管理软件",
"能熟练使用一种网页制作软件制作一般的网页",
"能熟练使用HTML,语言和JavaScript语言制作一般的网页",
);//定义对象
var x=0;pos=0;//定义变量并赋初值
vavl=tl[o].length;//定义变量1,并将对象t1数组元素的长度值赋给变量1
function tt(){
document.form.tf.value=tl[x].subswing(0,pos)+"-";
//将数组tl中元素从0到“pos”的值显示出来。
“form”是表单的名,“tl”是多行文本输入域的名。
If( (3) ){//如果数组tl中一个元素显示完毕,则显示下一个,否则继续显示
(4) ;
setTimeout("tt()",400);//设置定时器,值越小速度越快
if(++x==m{//如果数组d中所有元素均显示完毕,则从头显示,否则继续显示
(5) ;
1=tl[x].1ength:
}
else{
setTimeout("tt()",400);
}
}
</script>
<body>
<form. name=form>
<textarea name=tf rows=3 cols=38></textarea>
</form>
………
<! 省略部分为HTML文本框 >
……
</html>
第10题
A.int*p=a;
B.int p=a;
C.*p=a;
D.p=a;
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!