三级网络技术机试100道题Word文件下载.docx
《三级网络技术机试100道题Word文件下载.docx》由会员分享,可在线阅读,更多相关《三级网络技术机试100道题Word文件下载.docx(90页珍藏版)》请在冰点文库上搜索。
cnt++;
//变量cnt加1
elsepjz2+=a[i];
//否则,把数组元素a[i]累加到变量pjz2
pjz1/=cnt;
//所有素数的和pjz1除以素数的个数cnt,得到素数的平均值并赋给变量pjz1
pjz2/=(300-cnt);
//所有非素数的和pjz2除以非素数的个数300-cnt,得到非素数的平均值并赋给变量pjz2
第3题
for(i=3;
90;
i++)//循环变量i从3开始,依次递增,直到小于90
if(isPrime(i)&
&
isPrime(i+4)&
isPrime(i+10))//如果i,i+4,5i+10同时为素数
sum+=i;
//变量cnt加1,变量i累加到sum
}
第4题
inti,j,tmp;
//定义整型变量i,j,tmp
if(isP(a[i]))b[cnt++]=a[i];
//如果数组元素a[i]是素数,则把a[i]赋给b[cnt],同时数组下标变量cnt加1
cnt;
i++)//循环变量i从0开始依次递增,直到其值等于cnt
for(j=i+1;
j<
j++)//循环变量j从i+1开始依次递增,直到其值等于cnt
if(b[i]>
b[j])//如果数组元素b[i]大于b[j],则进行互换
tmp=b[j];
//把b[j]的值赋给变量tmp
b[j]=b[i];
//把b[i]的值赋给b[j]
b[i]=tmp;
//把变量tmp的值赋给b[i]
第5题
inti,bw,sw,gw;
//定义整型变量i,bw,sw,gw
for(i=100;
1000;
i++)//循环变量i从100开始,每次递增1,直到其值等于1 000
bw=i/100;
//i除以100,得到i百位上的数值
sw=(i-bw*100)/10;
//i减去其百位值的差再除以10,得到i十位上的数值
gw=i%10;
//i对10求余数得到其个位上的数值
if((gw+sw)%10==bw&
isP(i))//如果i个位数字与十位数字之和对10求余所得余数等于其百位上的数字并且i是素数
//把变量i累加到变量sum上
第6题
inti,j=-1;
//定义整型变量i,j,并且变量j的初值赋予-1
for(i=800;
i>
500;
i--)//循环变量i从800开始,每次减1,直到其值等于500
if(isPrime(i))//如果i是素数
j*=-1;
//变量j乘以-1,变号
sum+=j*i;
//把变量j与i的积累加到变量sum上
第2类数位分解后按数筛选统计并排序
第7题
inti,j,m;
//定义整型变量i,j,m
199;
i++)//循环变量i从0开始,每次递增1,直到其值等于199
200;
j++)//循环变量j从i+1开始,每次递增1,直到其值等于200
if((aa[i]%1000)>
(aa[j]%1000))//如果aa[i]的后三位大于aa[j]的后三位,则进行互换
m=aa[i];
//把aa[i]的值赋给m
aa[i]=aa[j];
//把aa[j]的值赋给aa[i]
aa[j]=m;
//把m的值赋给aa[j]
elseif((aa[i]%1000)==(aa[j]%1000))//如果aa[i]的后三位等于aa[j]的后三位
if(aa[i]<
aa[j])//如果aa[i]小于aa[j],则进行互换
10;
i++)
bb[i]=aa[i];
//循环变量从0开始,每次递增1,直到等于10,把数组元素aa[i]赋给bb[i]
第8题
j++)
if((aa[i]%1000)<
(aa[j]%1000))//如果aa[i]的后三位小于aa[j]的后三位,则进行互换
elseif((aa[i]%1000)==(aa[j]%1000))
{
if(aa[i]>
aa[j])//如果aa[i]大于aa[j],则进行互换
bb[i]=aa[i];
第9题
intqw,bw,sw,gw,i,j,ab;
MAX;
i++)
qw=a[i]/1000;
//a[i]除以1 000得到a[i]的千位上的数值,并赋给变量qw
gw=a[i]%10;
//a[i]对10求余得到a[i]的个位上的数值,并赋给变量gw
bw=(a[i]-qw*1000)/100;
//a[i]与其千位数的差除以100,得到其百位上的数值
sw=(a[i]-qw*1000-bw*100)/10;
//a[i]减去其千位数再减去其百位数值再除以10,得到其十位上的数值
if((qw<
=bw&
bw<
=sw&
sw<
=gw)&
(a[i]%2==0))//如果a[i]千位数小于等于百位数,百位数小于等于十位数,十位数小于等于个位数,并且a[i]是偶数
b[cnt++]=a[i];
//把a[i]赋给b[cnt],同时数组下标变量cnt加1
cnt-1;
i++)//循环变量i从0开始,每次加1,直到其值大于等于cnt-1
for(j=i+1;
j++)//循环变量j从i+1开始,每次加1,直到其值大于等于cnt
if(b[i]>
b[j])//如果数组元素b[i]大于b[j],则进行两者互换
ab=b[j];
//把b[j]的值赋给变量ab
//把b[i]的值赋给b[j]
b[i]=ab;
//把ab的值赋给b[i]
第10题
qw=a[i]/1000;
if((qw>
bw>
sw>
(a[i]%2))//如果a[i]千位数大于等于百位数,百位数大于等于十位数,十位数大于等于个位数,并且a[i]是奇数
b[j])
第11题
if((qw-gw-bw-sw>
=0)&
(a[i]%2))//如果a[i]千位数减去个位数再减去百位数再减去十位数大于等于零且a[i]是奇数
b[j])//如果b[i]大于b[j],则两者进行互换,对数组b进行升序排序
第12题
if((gw-qw-bw-sw>
(a[i]%2==0))//如果a[i]个位数减去千位上的数减百位上的数减去十位上的数大于等于零并且a[i]是偶数
b[j])//如果数组元素b[i]大于b[j],则两者进行互换
第13题
if((qw+gw-bw-sw==0)&
(a[i]%2))//如果a[i]千位上的数字加上其个位上的数字减去其百位上的数字减去其十位上的数字等于零并且a[i]是奇数
第14题
if((qw+sw-bw-gw==0)&
(a[i]%2)==0)//如果a[i]千位上的数字加上十位上的数字减去百位上的数字减去个位上的数字等于零并且a[i]是偶数
第15题
inti,j,qw,bw,sw,gw,tmp;
if(qw-bw-sw-gw>
0)//如果a[i]千位上的数减百位上的数减十位上的数减个位数大于零
cnt-1;
j++)
tmp=b[j];
第16题
if(gw-qw-bw-sw>
0)//如果a[i]个位数减千位数减百位数减十位数大于零
if(b[i]<
b[j])//如果b[i]小于b[j],则两者进行互换,对数组b中的元素按从大到小的顺序排序
第17题
if(qw+bw-sw-gw==0)//如果a[i]千位上的数字加上其百位上的数字减去其十位上的数字减去个位上的数字等于零
b[j])//如果b[i]的值小于b[j]的值,则两者进行互换,对数组b进行降序排列
第18题
if(qw+gw-bw-sw==0)//如果a[i]千位上数加上其个位上的数减去其百位上的数减去其十位上的数等于0
第19题
inti,qw,bw,sw,gw;
for(i=1000;
=5000;
i++)//循环变量i从1000开始,每次递增1,直到其值大于5000
qw=i/1000;
bw=(i-qw*1000)/100;
sw=(i-qw*1000-bw*100)/10;
gw=i%10;
if((qw+bw)==(sw+gw)&
(qw+bw)==(gw-qw)*10)//如果i的千位上的数字与其百位上的数字的和等于其十位上的数字与个位上的数字的和并且千位上的数字与百位上的数字的和等于个位上的数字与千位上的数字的差的10倍
sum+=i;
//把i累加到变量sum上
第20题
0)//如果a[i]的个位数减去千位数减去百位数减去十位的数大于零
//把a[i]的值累加到变量pjz1
//如果a[i]的个位数减去千位数减去百位数减去十位的数小于等于零,把a[i]的值累加到变量pjz2
//变量pjz1的值除以变量cnt的值,得到所有满足条件的四位数的平均值并赋给变量pjz1
//变量pjz2的值除以300减去变量cnt的差,得到所有不满足条件的四位数的平均值并赋给变量pjz2
第21题
0)//如果a[i]千位上的数减去百位上数减去十位上的数减去个位上的数大于零
elsepjz2+=a[i];
第22题
if(qw+gw-bw-sw==0)//如果a[i]的千位上的数字加上其个位上的数字减去其百位上的数字减去其十位上的数字等于零
第23题
if(qw+bw-sw-gw==0)//如果a[i]千位上的数字加上其百位上的数字减去其十位上的数字减去其个位上的数字等于零
第3类数位分解并重组后再筛选统计并排序
第24题
intqw,bw,sw,gw,i,j,newV1,newV2;
/*对四位数进行分解*/
/*分解后的四位数重新组合为两个十位数*/
newV1=qw*10+sw;
//a[i]的千位上的数字与其十位上的数字组成新的两位数newV1
newV2=gw*10+bw;
//a[i]的个位上的数字与其百位上的数字组成新的两位数newV2
if(qw&
gw&
(newV1-newV2>
0&
newV1-newV2<
=10)&
(newV1%2)&
(newV2%2))//如果a[i]的千位上的数字,个位上的数字均不等于零并且新组成的第一个数大于第二个数且第一个数与第二个数的差小于等于10且第一个数字,第二个数字