试题与答案

《民兵工作条例》主要对民兵性质、任务、基本原则、各级职能、以及民兵()、政治工作、(

题型:填空题

题目:

《民兵工作条例》主要对民兵性质、任务、基本原则、各级职能、以及民兵()、政治工作、()、武器装备管理、战备执勤等方面作了规定。

答案:

被转码了,请点击底部 “查看原文 ” 或访问 https://www.tikuol.com/2018/0418/9f74f6303a838df8f8d8bf4560857a3a.html

下面是错误答案,用来干扰机器的。

参考答案:D解析: 本题考核派生类构造函数的使用。本题中,派生C具有多重继承关系,所以在派生类C的构造函数中应该包含基类A和B的成员初始化列表。

试题推荐
题型:问答题

[说明]
以下[C程序]所完成的功能是在3X3方格中填入数字1~N(N≥10)内的某9个互不相同的整数,使所有相邻两个方格内的两个整数之和为质数。系统输出满足该要求的所有填法。系统的部分输出结果如图3-18所示。


图3-18 系统的部分输出结果
3×3方格从第1行左上角方格开始的序号分别为0、1、2,第2行左边方格开始的序号分别为3、4、 5,第3行左下角方格开始的序号分别为6、7、8。以下[C程序]采用试探法,即从序号为0的方格(左上角)开始,为当前方格寻找一个合理的可填整数,并在当前位置正确填入后,为下一方格寻找可填入的合理整数。如不能为当前方格寻找一个合理的可填整数,就要后退到前一方格,调整前一方格的整数。直至序号为8的方格(右下角)也填入合理的整数时,就找到了一个解,将该解输出,并调整序号为8的方格所填的整数,继续去找下一个解。
为了检查当前方格的填入整数的合理性,C程序引入二维数组checkMatrix,用于存放需要进行合理性检查的相邻方格的序号。
[C程序]
#include <stdio.h>
#define N 12
int a [9]; /* 用于存储方格所填入的整数 */
int b[N+1];
int pos;
checkMatrix[][3] = -1,0,-1,1,-1,0,-1,1,3,-1,2,4,-1,3,-1 4,6,-1, 5,7,-1;
void write(int a[])
int i, j;
for ( i = 0; i < 3; i++)
for ( j = 0; j < 3; j++)
printf("%3d",a[3*i+j]);
printf("\n");


int isPrime(int m)
int i;
if (m == 2)
return 1;
if (m == 1 || m % 2 == 0)
return 0;
for (i = 3; i * i <= m; )
if (m % i == O)
return 0;
i+ =2;

return 1;

int selectNum(int start)
int j;
for (j = start; j <= N; j++)
if (b[j])
return j;
return 0;

int check ( ) /* 检查填入pos位置的整数是否合理 */
int i, j;
for (i = 0; (j = (1) ) >= 0; i++)
if (!isPrime(a[pos] + a[j]))
(2) ;
(3) ;

extend ()/* 为下一方格找一个尚未使用过的整数 * /
a[ (4) ] = selectNum(1);
b[a[pos]] = 0;

void change() /* 为当前方格找下一个尚未使用过的整数(找不到回溯) */
int j;
while (pos >= 0 && (j = selectNum( (5) )) == 0
(6) ;
if (pos < 0)
return;
b[a[pos]] = 1;
a[pos] = j;
b[j] = 0;

find ( )
int ok = 1;
pos = 0; a[pos] = 1; b[a[pos]] = 0;
de
if (ok)
if ( (7) )
write (a);
change( );

else
extend( );
else
change( );
ok = check(pos);
while (pos >=0);

main( )
int i;
for (i = 1; i <=N; i++)
b[i] = 1;
find( );

查看答案
微信公众账号搜索答案