题目内容

阅读下列程序说明和C代码,将应填入(n)处的字句写在对应栏内[说明]
本程序在3×3方格中填入1到10以内9个互不相等的整数,使所有相邻两个方格内的两个整数之和为质数。程序的输出是全部满足条件的方格。
方格的序号如下图所示。程序采用试探法,从序号为0的方格开始,依次为当前方格寻找一个合理的可填整数,并在当前位置正确填入后,为下一方格寻找可填入的合理整数;如不能为当前方格寻找一个合理的可填整数,就要后退到前一方格,调整前一方格的填入整数;当序号为8的方格也填入合理的整数后,就找到了一个解。
为检查当前方格所填整数的合理性,程序引入数组CheckMatrix,存放需要进行合理性检查的相邻方格的序号。事实上,CheckMatrix中只要求第i个方格中的数向前兼容,即填写第4个方格时,只检查在它之前、与之相邻的第1,3个方格是否满足和为素数的条件。
[程序]
include <stdio.h>
int pos,a[9],b[11]; /*用于存储方格所填入的整数*/
void write(int a[]) /*方格输出函数*/
{ ……}
int isPrime(int m) /*素数判断函数,若m为素数则返回1,否则返回0*/
{ ……}
int selectNum(int start) /*找到start到10之间尚未使用过的最小的数,若没有则返回0*/
{ int j;
for(j=start;j<=10;j++) if(b[j]) return j;
return0;
}
int check() /*检查填入pos位置的整数是否合理*/
{ int i,j
int checkMatrix[][3]={{-1},{0,-1},{1,-1},{0,-1},{1,3,-1},{2,4,-1},{3,- 1},{4,6,-1},{5,7,-1}};
for(i=0;(j=(1))>=0;i++)
if(! isPrime((2)))return 0;
return 1;
}
void extend() /*为下一方格找一个尚未使用过的整数*/
{ (3)=selectNum(1);
b[a[pos]]=0;
}
void change() /*为当前方格找下一个尚未使用过的整数,若找不到则回溯*/
{ int j;
while(pos>=0&&(j=selectNum(a[pos]+1))= =0) b[a[pos- -]]=1;
if(pos<0)return;
(4);a[pos] =j;b[j]=0; }
void find()
{ int k=1;
pos=0;a[pos]=1;b[a[pos]]=0;
do{
if(ok)
if((5) ){
write(a);change();
}
else extend();
else change();
k=check(pos);
}while(pos>=0);
}
void main()
{ int i;
for(i=1;i<=10;i++)b[i]=1;
find();
}

查看答案
更多问题

本案例说明了物业管理中的什么问题?为什么?

The most significant problems we were confronted at that time were the shortage of skilled

The poison produced by bacteria is not destroyed during cooking, so correct ______ before

某建材企业(A企业)为增值税一般纳税人,同时具备建筑施工及安装资质,该公司注册资金原来为2000万元,2007年注册资金增加到3000万元,当年经营如下:
(1)拥有小轿车4辆、净吨位5吨的载货汽车8辆,净吨位5吨的挂车 5辆;
(2)启用新账本8本,包括日记账、明细账、总账;
(3)签订总金额3000万元的总承包合同一份,标明白产玻璃幕墙1000万元,现场浇注水泥预制件500万元,其他施工及劳务费1500万元;
(4)该公司将部分工程作业转包给另一家企业(2企业),转包方也为增值税一般纳税人,转包合同注明总价1000万元,其中包括2企业白产的铝合金门窗500万元和施工劳务费500万元;
(5)当期该企业为生产玻璃幕墙购买材料500万元,取得发票注明进项税85万元;购买现场浇注水泥100万元,发票注明进项税17万元。
要求:
(1)计算A公司应缴车船税;
(2)计算A公司应缴印花税,采取的缴纳方式;
(3)计算A公司应纳城建税、教育费附加;
(4)计算A公司应代扣的税金。
(小轿车年税额180元,载货汽车每吨年税额40元。)

答案查题题库