阅读下列程序并回答问题。(1)程序的输出是()(2)将第9行改为" m=m+k; ",程序的输出是(
阅读下列程序并回答问题。
(1)程序的输出是()
(2)将第9行改为" m=m+k; ",程序的输出是()
(3)将第6行改为"k=0;",将第9行改为" m=m+k;",程序的输出是()
阅读下列程序并回答问题。
(1)程序的输出是()
(2)将第9行改为" m=m+k; ",程序的输出是()
(3)将第6行改为"k=0;",将第9行改为" m=m+k;",程序的输出是()
阅读下列算法,并回答问题:
(1)Q、Q1和Q2都是队列结构,设队列Q=(1,0,-5,2,-4,-6,9),其中1为队头元素,写出执行f31(&Q,&Q1,&Q2)之后队列Q、Q1和Q2的状态;
(2)简述算法f31的功能。
(注:InitQueue、EnQueue、DeQueue和QueueEmpty分别是队列初始化、入队、出队和判队空的操作)
void f31(Queue*Q,Queue*Q1,Queue*Q2){
int e;
InitQueue(Q1);
InitQueue(Q2);
while(!QueueEmpty(Q)){
e=DeQueue(Q);
if(e>=0)EnQueue(Q1,e);
else EnQueue(Q2,e);
}
}
阅读下面的程序段,回答以下问题。
if (x < 5 ) System.out.print(" one ");
else {
if (y < 5 ) System.out.print(" two ");
else System.out.println(" three ");
}
问题:1)若执行前x=6,y=8,该程序段输出是什么?2)若执行前x=1,y=8,该程序段输出是什么?
阅读下列算法说明和流程图1,回答问题1至问题3。
[算法说明]
某旅馆共有N间客房。每间客房的房间号、房间等级、床位数以及占用状态分别存放在数组ROOM、RANK、NBED和STATUS中。房间等级值为1、2或3。房间的状态值为0(空闲)或1(占用)。客房是以房间(不是床位)为单位出租的。
本算法根据几个散客的要求预订一间空房。程序的输人为:人数M,房间等级要求R(R =0表示任意等级都可以)。程序的输出为:所有可供选择的房间号。
流程图1描述了该算法。
假设当前该旅馆各个房间的情况见表3。
当输入M=4,R=0时,该算法的输出是什么?
阅读以下应用说明、图和C++代码,根据要求回答问题1至问题3。
[说明]
已知以下C++程序运行时的输出结果如下。
1:1
1:1
1:1
[C++程序]
01 include <iostream>
02 using namespace std;
03 class Stock{
04 protect:
05 (1) { };
06 Stock(int n, int pr=1) {
07 shares = n; share_val=pr;
08 };
09 void ~Stock() { };
10 public:
11 //成员函数
12 void output() {
13 (2)<< shares << ":" << share_val << endl;
14 }
15 private:
16 //成员变量
17 int shares;
18 int share_val;
19 };
20
21 void main() {
22 Stock a(1); a.output
23 Stock b; b.output
24 Stock c = Stock (); c.output
25 }
请根据C++程序运行时的输出结果,将代码中(1)、(2)空缺处的内容补充完整。
阅读下列说明,回答问题1至问题3。
【说明】
以下代码由C语言书写,在输入3个整数后,能够输出最大数和最小数。
int main(void)
{
int a, b, c, max, min;
printf("input three numbers: ");
scanf("%d%d%d", &a, &b, &c);
if(a>b) /*判断1*/
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
if(max<c) /*判断2*/
max=c;
else if(min>c) /*判断3*/
min=c;
printf("max=%d\nmin=%d", max, min);
return 0;
}
请画出该程序段的控制流图,并分析该控制流图中有多少条线性独立路径(V(G)的值)。
为了用分支(判定)覆盖方法测试该程序,需要设计测试用例,使其能对该程序中的每个判断语句的各种分支情况全部进行过测试。
对两组输入数据(1)a=3,b=5,c=7;(2)a=4,b=6,c=5,请分别写出程序中各个判断语句的执行结果(以T表示真,以F表示假),填入答题纸的相应栏中。
上述两组测试数据是否能实现该程序的分支(判定)覆盖?如果能,请说明理由。如果不能,请再增设一组输入数据,使其能实现分支(判定)覆盖。
请帮忙给出每个问题的正确答案和分析,谢谢!
请阅读题目并回答问题。
某企业的绩效管理主要采用以下步骤和方法:
第一步,对于部门主管以上领导干部,年终由主管领导召集其下属员工开会。共同听取其述职报告,再由员工及上级领导根据其一年来的表现填写“年度领导干部考核评议表”。该表汇总后将分数按“领导、部门内同事、下属”(2:3:5的权重)加权平均得出总分。
第二步,全体员工共分四组排序:一般员工、主管、部门经理、高层领导。每组按考评结果分五个等级,每一等级所占比例如表4—2所示。
第三步,考评结果运用:A等级范围的人有机会获得晋升,而E等级的将被淘汰或降级。
(1)请指出前两个步骤使用了哪些绩效考评方法。
(2)上述考评方法有哪些不足之处?请针对这些不足提出改进建议。
阅读下列说明,回答问题1至问题3。
【说明】
因果图方法的思路是:从用自然语言书写的程序规格说明描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。
分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明),马走日字型(邻近交叉点无棋子),遇到对方棋子可以吃掉,遇到本方棋子不能落到该位置。
应用中可能有多种输入条件,在什么情况下可采用因果图法设计测试用例?
根据上述说明,利用因果图法,下面列出走棋出现的情况和结果,找出哪些是正确的输入条件,哪些是正确的输出结果,请把相应的字母编号填入表中。 A.落点在棋盘上; B.落点与起点构成日字;
C.移动棋子; D.落点处为对方棋子:
E.落点处为自己方棋子;F.移动棋子,并除去对方棋子;G.落点方向的邻近交叉点无棋子;H.不移动棋子;I.落点处无棋子。
下图画出中国象棋中走马的因果图,请把问题2中列出的输入条件和输出结果的字母编号填入到空白框中相应的位置。
请帮忙给出每个问题的正确答案和分析,谢谢!
阅读以下某旅馆客房管理系统的算法说明和程序流程图,根据要求回答问题1~问题4。
[算法说明]
某旅馆共有N间客房。每间客房的房间号、房间等级、床位数及占用状态分别存放在数组ROOM、RANK、NBED和 STATUS中。房间等级值为1、2或3。房间的状态值为0(空闲)或1(占用)。客房是以房间(不是床位)为单位出租的。
程序流程图(见图6-21)所反映的算法是,根据几个散客的要求预订一间空房。程序的输入为:人数M,房间等级要求 R(R=0表示任意等级都可以)。程序的输出为:所有可供选择的房间号。
在程序流程图(见图6-21)中,若要某个房间I被选中,则需要满足什么条件?
●试题五
阅读以下程序说明和C程序,将应填入(n)处的子句,写在答卷纸的对应栏内。
【程序说明】
函数int commstr(char *str1,char *str2,int *sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。
函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。
【程序】
int strlen(char *s)
{char *t=s;
while(*++);
return t-s-1;
}
intcommstr(char)*str1,char *str2,int *sublen
{char*s1,*s2;
int count=0,len1,len2,k,j,i,p;
len1=strlen(str1);
len2=strlen(str2);
if(len1>len2)
{s1=str1;s2=str2;}
else{len2=len1;s1=str2;s2=str1;}
for(j=len2;j>0;j--)/*从可能最长子串开始寻找*
{for(k=0; (1) <=len2;k++)/*k为子串s2的开始位置*/
{for(i=0;s1[ (2) ]!='\0';i++;)/* i为子串s1的开始位置*/
{/* s1的子串与s2的子串比较*/
for(p=0;p<j)&& (3) ;p++);
if ((4) )/*如果两子串相同*/
{for(p=0);p<j;p++}/*输出子串*/
printf("%c",s2[k+p]);
printf("\n");
count++;/* 计数增1*/
}
}
}
if (count>0)break;
*sublen=(count>0)? (5) :0;
return count;
}
阅读下列程序。 Private Sub Command1_Click() Dim i As Integer,k As Integer k=2 For i=1 To 3 Print Fun(k); Next End Sub Function Fun(j As Integer) Static b a=0 a=a + 1 b=b + 1 Fun=a*b+j End Function 程序运行后,单击命令按钮输出结果是
A.234
B.345
C.567
D.356
阅读下列程序:
PrivateSubCommand1_Click()
Dim i As Integer,k As Integer
k=2
For i=1 To 3
Print Fun(k);
Next
End Sub
Function Fun(j As Integer)
Static b
a=0
a=a+1
b=b+1
Fun=a*b+j
End Function 程序运行后,单击命令按钮输出结果是
A.234
B.345
C.567
D.356