阅读以下说明和C程序,填充程序中的空缺,将解答填入答题纸的对应栏内。
【说明】
正整数n若是其平方数的尾部,则称n为同构数。例如,6是其平方数36的尾部,
76是其平方数5776的尾部,6与76都是同构数。下面的程序求解不超过10000的所有
同构数。
已知一位的同构数有三个:1,5,6,因此二位同构数的个位数字只可能是1,5,6
这三个数字。依此类推,更高位数同构数的个位数字也只可能是1,5,6这三个数字。
下面程序的处理思路是:对不超过100 00的每一个整数a,判断其个位数字,若为1、
5或6,则将a转换为字符串as,然后对a进行平方运算,并截取其尾部与as长度相等
的若干字符形成字符串后与as比较,根据它们相等与否来断定a是否为同构数。
【C程序】
include<stdio.h>
include<stdlib .h>
include<string .h>
int myitoa (int, char*); ,/*将整数转换为字符串*/
/* right取得指定字符串尾部长度为ler gth的子串,返回所得子串的首字符指针*/
char *right (char*, int length);
int main ()
{
int a, t; int len;
char as [10], rs[20];
printf(”[1,10000]内的同构数:\r”);
for (a=l.a<=10000; a++) {
t= (1); /*取整数a的个位数字*/
if (t!=l&&t!=5&&t!=6) :ontinue;
len=myitoa (a, as)j /*数a转换为字符串,存入as*/
myitoa (a*a, rs); /*数a的平方转换为字符串,存入rs*/
/*比较字符串as与rs末尾长度为len的子争是否相等*/
if(strcmp(as,__(2) )**o) /*若相同则是同构数并输出*/
printf(“%s的平方为%s\n”,as,rs);
}
return O;
}
int myitoa (int num,char*s) /*将整数num转换为字符串存入s*/
{
int i,n=0;
char ch;
/*从个位数开始,取num的每一位数字转换为字符后放入s[]*/
while (num) {
s[n++] =(3) +’o&39;;
num=num/10.
}
s[n]=’\0 ‘;
for (i=0; i<n/2; i++){ /*将s中的字符串逆置*/
(4) ; s[i]= s [n-i-l];s[n-i-1]=ch;
}
return n; /*返回输入参数num的位数*/
}
char *right (char*ms, int length)
/*取字符串ms尾部长度为length的子串,返回所得子串的首字符指针*/
{
int i;
For(;*ms;ms++) /*使ms到达原字符串的尾部*/
for( i=0; i<length. (5) ; /*使ms指向所得子串的首部字符*/
return ms;
}
第1题:
从以下备选答案内为程序中(3)~(7)处空缺选择正确答案,并填入答题纸对应的解答栏内。 (3)~(7)备选答案: A.Text B.Submit
C.Password D.Radio
E.Checkbox F.Option G.Select H.Reset
第2题:
阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。
[说明]
如图10-4所示是电子商务系统平台结构示意图。

请把空缺的地方填写完整。
第3题:
阅读以下说明,回答问题1~2,将解答填入对应的解答栏内。
[说明] 某程序的功能是输入三个正整数作为边长,判断三条边构成的三角形是否等边、等腰或是一般三角形。
通过该程序的算法用等价类设计测试用例,检查逻辑覆盖标准。
(2)为合理设计等价类测试用例对于表中对应的四个合理等价类用三个测试用例覆盖见下表:
(3)为每—个不合理等价类设计一个侧试用例见下表:

(2)为合理设计等价类测试用例,对于表中对应的四个合理等价类,用三个测试用例覆盖,见下表:
(3)为每—个不合理等价类设计一个侧试用例,见下表:
第4题:
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
[说明]
下图是一个完整的供应链结构图,如图7-1所示。

图7-2是管进与电子商务的整全图。

请把图7-1空缺的部分补充完整。
第5题:
阅读以下说明和C函数,填补代码中的空缺(1)~(5),将解答填入答题纸的对应栏内。
【说明1】 函数isPrime(int n)的功能是判断n是否为素数。若是,则返回1,否则返回0。素数是只能被1和自己整除的正整数。例如,最小的5个素数是2,3,5,7,11。 【C函数】 int isPrime (int n) { int k, t; if (n==2) return 1; if(n<2|| (1) ) return 0; /* 小于2的数或大于2的偶数不是素数 */ t=(int)sqrt(n)+1; for (k=3; k<t; k+=2) if ( (2) ) return 0; return 1; } 【说明2】 函数int minOne(int arr[], int k)的功能是用递归方法求指定数组中前k个元素中的最小者,并作为函数值返回。 【C函数】 int minOne (int arr[], int k) { int t; assert (k>0) ; if(k==1) return (3) ; t=minOne(arr+1, (4) ; if (arr[0]<t) return arr[0]; return (5) ; }
第6题:
●试题二
阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
该程序运行后,输出下面的数字金字塔

【程序】
include<stdio.h>
main ()
{char max,next;
int i;
for(max=′1′;max<=′9′;max++)
{for(i=1;i<=20- (1) ;++i)
printf(" ");
for(next= (2) ;next<= (3) ;next++)
printf("%c",next);
for(next= (4) ;next>= (5) ;next--)
printf("%c",next);
printf("\n");
}
}
第7题:
()阅读下列说明和C语言程序,将应填入 (n)处的语句写在答题纸的对应栏内。[说明]下面程序是一个带参数的主函数,其功能是显示在命令行中输入的文本文件内容。[C语言函数]#include"stdio.h"main(argc,argv) int argc; char *argv[]; { (1) ; if((fp=fopen(argv[1],”r’’))== (2) ) { printf(”file not open!\n”);exit(0);} while( (3) ) putchar( (4) ); (5); }
第8题:
第9题:


第10题:


第11题:
第12题:


第13题:
阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写在对应栏内。
【说明】
阅读下面几段C++程序回答相应问题。
比较下面两段程序的优缺点。
①for (i=0; i<N; i++ )
{
if (condition)
//DoSomething
…
else
//DoOtherthing
…
}
②if (condition) {
for (i =0; i<N; i++ )
//DoSomething
}else {
for (i=0; i <N; i++ )
//DoOtherthing
…
}
第14题:
阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。
[说明]
电子商务系统的外部社会环境如图10-5所示。

请把空缺的地方填写完整。
第15题:
阅读以下说明,回答问题,将解答填入对应的解答栏内。
. [说明] 请完成流程图以描述在数据A(1)至A(10)中求最大数和次大数的程序的算法。并将此改成PAD图。该算法的流程图如下图:


解析:本题的算法思想是:先输入A(1)到A(10)的值,然后判断前两个数的大小。用变量max1存储最大数,用变量max2.存储次大数。然后逐个读入数据,分别和max1,max2比较,保证最大的存入max1,次大的存入max2。
第16题:
阅读以下说明和关系表,回答问题1~5,将解答填入对应的解答栏内。
[说明]
试用SQL查询语句表达下列对教学数据库中的3个基本表STUDENT,COURSE,SC的查询
[关系表]

查询全体学生的姓名和年龄。
第17题:
阅读以下说明和Java程序,填补代码中的空缺(1)~(6),将解答填入答题纸的
对应栏内。
【说明】
很多依托扑克牌进行的游戏都要先洗牌。下面的Java代码运行时先生成一副扑克
牌,洗牌后再按顺序打印每张牌的点数和花色。
【Java代码】


第18题:
试题三(共 15 分)
阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。

第19题:
第20题:

第21题:

第22题:
第23题:
第24题: