全国计算机等级考试三级网络技术上机考试分类题型新思路.docx

上传人:b****4 文档编号:4880654 上传时间:2022-12-11 格式:DOCX 页数:33 大小:24.51KB
下载 相关 举报
全国计算机等级考试三级网络技术上机考试分类题型新思路.docx_第1页
第1页 / 共33页
全国计算机等级考试三级网络技术上机考试分类题型新思路.docx_第2页
第2页 / 共33页
全国计算机等级考试三级网络技术上机考试分类题型新思路.docx_第3页
第3页 / 共33页
全国计算机等级考试三级网络技术上机考试分类题型新思路.docx_第4页
第4页 / 共33页
全国计算机等级考试三级网络技术上机考试分类题型新思路.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

全国计算机等级考试三级网络技术上机考试分类题型新思路.docx

《全国计算机等级考试三级网络技术上机考试分类题型新思路.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试三级网络技术上机考试分类题型新思路.docx(33页珍藏版)》请在冰豆网上搜索。

全国计算机等级考试三级网络技术上机考试分类题型新思路.docx

全国计算机等级考试三级网络技术上机考试分类题型新思路

全国计算机等级考试三级网络技术上机考试南开100题分类的序号和题型

素数:

【1】将大于整数m且紧靠m的k个素数存入数组xx传回

intcnt=0;

while(cnt

{

m++;

if(isP(m))

xx[cnt++]=m;

}

【2】300个四位数是素数的个数cnt,再求出所有满足此条件的四位数平均值pjz1以及不满足此条件的四位数平均值pjz2

inti;

for(i=0;i<300;i++)

{

if(isP(a[i]))

{

pjz1+=a[i];

cnt++;

}

elsepjz2+=a[i];

}

pjz1/=cnt;

pjz2/=(300-cnt);

【3】找出所有100以内满足I,I+4,I+10都是素数的整数I(I+10也在100以内)的个数以及这些I之和

inti;

for(i=3;i<90;i++)

{

if(isPrime(i)&&isPrime(i+4)&&isPrime(i+10))

{

cnt++;

sum+=i;

}

}

【4】求出300个四位数是素数的个数,并从小到大进行排序

inti,j,ab;

for(i=0;i<300;i++)

{

if(isP(a[i]))

b[cnt++]=a[i];

}

for(i=0;i

for(j=i+1;j

{

if(b[i]>b[j])

{

ab=b[j];

b[j]=b[i];

b[i]=ab;

}

}

【5】选出100以上1000之内所有个位数字与十位数字之和被10除所得余数恰是百位数字的素数

inti,bw,sw,gw;

for(i=100;i<1000;i++)

{

gw=i%10;

bw=i/100;

sw=(i-bw*100)/10;

if((gw+sw)%10==bw&&isP(i))

{

cnt++;

sum+=i;

}

}

【6】计算500-800内素数的个数,按从大到小顺序计算其间隔加、减之和

inti,j=-1;

for(i=800;i>500;i--)

{

if(isPrime(i))

{

cnt++;

j*=-1;

sum+=j*i;

}

}

【7-8】

按每个数的后三位的大小进行升序排列,如果后三位的数值相等,按原先的数值进行降序排列,取前10个。

inti,j,ab;

for(i=0;i<199;i++)

for(j=i+1;j<200;j++)

{

if((aa[i]%1000)>(aa[j]%1000))

{

ab=aa[j];

aa[j]=aa[i];

aa[i]=ab;

}

elseif((aa[i]%1000)==(aa[j]%1000))

{

if(aa[i]

{

ab=aa[j];

aa[j]=aa[i];

aa[i]=ab;

}

}

}

for(i=0;i<10;i++)

bb[i]=aa[i];

按每个数的后三位的大小进行降序排列,如果后三位的数值相等,按原先的数值进行升序排列,取前10个。

【9-18】(MAX定义了就写i

200个四位数,千位<=百位<=十位<=个位,四位数是偶数,个数cnt,从小到大的顺序存入数组b中

inti,j,qw,bw,sw,gw,ab;

for(i=0;i

{

qw=a[i]/1000;

gw=a[i]%10;

bw=(a[i]-qw*1000)/100;

sw=(a[i]-qw*1000-bw*100)/10;

if((qw<=bw&&bw<=sw&&sw<=gw)&&(a[i]%2==0))

b[cnt++]=a[i];

}

for(i=0;i

for(j=i+1;j

if(b[i]>b[j])

{

ab=b[j];

b[j]=b[i];

b[i]=ab;

}

200个四位数,千位>=百位>=十位>=个位,四位数是奇数,个数cnt,从小到大的顺序存入数组b中

if((qw>=bw&&bw>=sw&&sw>=gw)&&(a[i]%2))

200个四位数,千位-百位-十位-个位>=0,四位数是奇数,个数cnt,从小到大的顺序存入数组b中

if((qw-bw-sw-gw>=0)&&(a[i]%2))

200个四位数,千位-百位-十位-个位>=0,四位数是偶数,个数cnt,从小到大的顺序存入数组b中

if((qw-bw-sw-gw>=0)&&(a[i]%2==0))

200个四位数,千位+个位=百位+十位,四位数是奇数,个数cnt,从小到大的顺序存入数组b中

if((qw+gw-bw-sw==0)&&(a[i]%2))

200个四位数,千位+十位=百位+个位,四位数是偶数,个数cnt,从小到大的顺序存入数组b中

if((qw+sw-bw-gw==0)&&(a[i]%2==0))

200个四位数,千位-百位-十位-个位>0,个数cnt,从小到大的顺序存入数组b中

if(qw-bw-sw-gw>0)

200个四位数,个位-千位-百位-十位>0,个数cnt,从小到大的顺序存入数组b中

if(gw-qw-bw-sw>0)

200个四位数,千位+百位=十位+个位,个数cnt,从小到大的顺序存入数组b中

if(qw+bw-sw-gw==0)

200个四位数,千位+个位=十位+百位,个数cnt,从小到大的顺序存入数组b中

if(qw+gw-sw-bw==0)

【19】

1000-5000以内,千位+百位=十位+个位,且千位+百位=(个位-千位)的10倍.计算并输出这些四位自然数的个数cnt以及这些数的和sum

inti,qw,bw,sw,gw;

for(i=1000;i<5000;i++)

{

qw=i/1000;

gw=i%10;

bw=(i-qw*1000)/100;

sw=(i-qw*1000-bw*100)/10;

if(qw+bw-sw-gw==0&&(qw+bw)==(gw-qw)*10)

{

cnt++;

sum+=i;

}

}

【20-23】

300个四位数,个位-千位-百位-十位->0个数cnt,满足此条件数平均值pjz1,不满足此条件数平均值pjz2

inti,qw,bw,sw,gw;

for(i=0;i<300;i++)

{

qw=a[i]/1000;

gw=a[i]%10;

bw=(a[i]-qw*1000)/100;

sw=(a[i]-qw*1000-bw*100)/10;

if(gw-qw-bw-sw>0)

{

pjz1+=a[i];

cnt++;

}

elsepjz2+=a[i];

}

pjz1/=cnt;

pjz2/=(300-cnt);

300个四位数,千位-百位-十位-个位>0个数cnt,满足此条件数平均值pjz1,不满足此条件数平均值pjz2

if(qw-bw-sw-gw>0)

300个四位数,千位+个位=百位+十位,个数cnt,满足此条件数平均值pjz1,不满足此条件数平均值pjz2

if(qw+gw-bw-sw==0)

300个四位数,千位+百位=十位+十位,个数cnt,满足此条件数平均值pjz1,不满足此条件数平均值pjz2

if(qw+bw-sw-gw==0)

【24-31】

整数各位分解组合运算:

(200个四位数重组为2个两位数,十位数字不为0

注意:

newV1、newV2的组成方式,至少有一个是偶数用或运算。

一个奇数一个偶数要分两种情况。

如果新组成的ab-cd>=0且ab-cd<=10且两个数均是奇数,十位数字均不为零,满足条件的四位数按从大到小的顺序存入数组b中,计算满足条件的四位数的个数cnt

inti,j,qw,bw,sw,gw,newV1,newV2;

for(i=0;i

{

qw=a[i]/1000;

gw=a[i]%10;

bw=(a[i]-qw*1000)/100;

sw=(a[i]-qw*1000-bw*100)/10;

newV1=qw*10+sw;

newV2=gw*10+bw;

if(qw&&gw&&(newV1-newV2>=0&&newV1-newV2<=10)&&(newV1%2)&&(newV2%2))

b[cnt++]=a[i];

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

newV1=b[j];

b[j]=b[i];

b[i]=newV1;

}

千位+十位组合,素数且新数十位数字均不为零,从大到小的顺序存入数组b中,个数cnt

if(qw&&gw&&isprime(newV1)&&isprime(newV2))

两个十位数ab

if(qw&&gw&&(newV1

两个十位数均是偶数并且至少有一个数能被9整除,同时两个新数的十位数字均不为零,按从大到小的顺序存入数组b中,个数cnt

if(qw&&gw&&(newV1%2==0)&&(newV2%2==0)&&(newV1%9==0||newV2%9==0))

组成的两个十位数必须是一个奇数,另一个为偶数并且至少有一个数能被17整除,新数的十位数字均不为零,按从大到小的顺序存入数组b中,计算cnt

if(qw&&gw&&(((newV1%2==0)&&(newV2%2)&&(newV1%17==0||newV2%17==0))||((newV1%2)&&(newV2%2==0)&&(newV1%17==0||newV2%17==0))))

组成的两个十位数均是奇数并且至少有一个数能被5整除,按从大到小的顺序存入数组b中,个数cnt

if(qw&&gw&&(newV1%2)&&(newV2%2)&&((newV1%5)==0||(newV2%5)==0))

组成的两个十位数ab-cd>=10且ab-cd<=20且两个数均是偶数,按从大到小的顺序存入数组b中,个数cnt

if(qw&&gw&&(newV1-newV2>=10&&newV1-newV2<=20)&&(newV1%2==0)&&(newV2%2==0))

ab>cd,ab必须是偶数且能被5整除,cd必须是奇数,按从大到小的顺序存入数组b中,计算个数cnt

if(qw&&gw&&(newV1>newV2)&&(newV1%2==0&&newV1%5==0)&&(newV2%2))

【32-33】

200个四位数,各位上数字均是偶数,个数cnt,按从大到小的顺序存入数组b

inti,j,qw,bw,sw,gw,ab;

for(i=0;i

{

qw=a[i]/1000;

gw=a[i]%10;

bw=(a[i]-qw*1000)/100;

sw=(a[i]-qw*1000-bw*100)/10;

if((qw%2==0)&&(bw%2==0)&&(sw%2==0)&&(gw%2==0))

b[cnt++]=a[i];

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

ab=b[j];

b[j]=b[i];

b[i]=ab;

}

200个四位数,各位上数字均是奇数,个数cnt,按从大到小的顺序存入数组b

if((qw%2)&&(bw%2)&&(sw%2)&&(gw%2))

【34】完全平方数:

100至999中寻找符合条件的整数并依次从小到大存入数组中,它既是完全平方数,又是两位数字相同

intn,k,a,b,c,cnt=0;

for(k=10;;k++)

{

n=k*k;

if(n<100)continue;

if(n>999)break;

c=n%10;

a=n/100;

b=n%100/10;

if((a-b)*(b-c)*(c-a)==0)

{

printf("N=%d=%d*%d\n",n,k,k);

bb[cnt++]=n;

}

}

returncnt;

【35-38】

相邻数大小筛选排序(200个四位数比较后5个数,i=0;i

连续小于后五个数且该数是偶数,从小到大的顺序,个数cnt

inti,j,ab;

for(i=0;i

{

if((a[i]%2==0)&&a[i]

b[cnt++]=a[i];

}

for(i=0;i

for(j=i+1;j

if(b[i]>b[j])

{

ab=b[j];

b[j]=b[i];

b[i]=ab;

}

大于前连续5个数,该数是偶数,从大到小排序

for(i=5;ia[i-1]&&a[i]>a[i-2]&&a[i]>a[i-3]&&a[i]>a[i-4]&&a[i]>a[i-5])

大于后连续5个数,该数是奇数,从小到大排序

for(i=0;ia[i+1]&&a[i]>a[i+2]&&a[i]>a[i+3]&&a[i]>a[i+4]&&a[i]>a[i+5])

大于前连续5个数,该数是奇数,且该数必须能被7整除,从大到小排序

for(i=5;ia[i-1]&&a[i]>a[i-2]&&a[i]>a[i-3]&&a[i]>a[i-4]&&a[i]>a[i-5]&&(a[i]%7==0))

级数运算:

【39】Sn=M,这里Sn=A1+A2+...+An,并依次把n值存入数组单元b[0],b[1]和b[2]中

inta1=1,a2=1,s=2,n=1,m=10,i,t;

for(i=0;i<3;i++)

{

m*=10;

while(s

{

t=a1+2*a2;

s=s+t;

n=n+1;

a1=a2;

a2=t;

}

printf("m=%d,n=%d\n",m,n);

b[i]=n;

}

Fibonacci数列:

【40】求Fibonacci数列中大于t的最小的一个数while(fn<=t){...}returnfn;

intf0=0,f1=1,f2=1;

while(f2

{

f0=f1;

f1=f2;

f2=f0+f1;

}

returnf2;

迭代方法求方程:

Xn+1=cos(Xn)while(fabs(x0-x1)>=0.000001);

【41】

doublex0,x1=0.0;

while

(1)

{

x0=x1;

x1=cos(x0);

if(fabs(x0-x1)<0.000001)

break;

}

returnx1;

【42-43】(N定义了,用上i

200个整数,求出奇数的个数cnt1和偶数的个数cnt2以及数组下标为偶数的元素值的算术平均值pj

inti;cnt1=0;cnt2=0;pj=0;

for(i=0;i

{

if(xx[i]%2)cnt1++;

elsecnt2++;

if(i%2==0)

pj+=xx[i];

}

pj/=100.0;

200个整数,求出奇数的个数cnt1和偶数的个数cnt2以及数组下标为奇数的元素值的算术平均值pj

if(i%2)

整数统计运算:

【44-45】求出正整数totNum个数以及这些数右移1位后产生的新数是偶数的数的个数totCnt和满足此条件的这些数(右移前的值)的算术平均值totPjz

inti,j;

longhe=0;

for(i=0;i

if(xx[i])

totNum++;

for(i=0;i

{

j=(xx[i]>>1);

if(j%2==0)

{

totCnt++;

he+=xx[i];

}

}

totPjz=(double)he/totCnt;

求出正整数totNum个数以及这些数右移1位后产生的新数是奇数的数的个数totCnt和满足此条件的这些数(右移前的值)的算术平均值totPjz

if(j%2)

【46-47】

求出正整数totNum个数以及这些数各位数字之和是偶数的数的个数totCnt和满足此条件的这些数的算术平均值totPjz

inti,j;

longhe=0;

charnum[5];

for(i=0;i<5;i++)

num[i]=0;

for(i=0;i

if(xx[i])

totNum++;

for(i=0;i

{

sprintf(num,"%04d",xx[i]);

j=num[0]-48+num[1]-48+num[2]-48+num[3]-48;

if(j%2==0)

{

totCnt++;

he+=xx[i];

}

}

totPjz=(double)he/totCnt;

求出正整数totNum个数以及这些数各位数字之和是奇数的数的个数totCnt和满足此条件的这些数的算术平均值totPjz

if(j%2)

方差运算:

【48-50】

计算出xx中偶数的个数even,奇数的平均值ave1,偶数的平均值ave2以及方差totfc的值

inti,odd=0;

for(i=0;i

if(xx[i]%2)

{

odd++;

ave1+=xx[i];

}

else

{

even++;

ave2+=xx[i];

}

ave1/=1.0*odd;

ave2/=1.0*even;

for(i=0;i

{

if(xx[i]%2==0)

totfc+=(xx[i]-ave2)*(xx[i]-ave2);

}

totfc/=1.0*even;

计算出xx中奇数的个数odd,奇数的平均值ave1,偶数的平均值ave2以及所有奇数的方差totfc的值

if(xx[i]%2)

totfc+=(xx[i]-ave1)*(xx[i]-ave1);

计算出xx中奇数的个数odd,偶数的个数even,平均值aver以及方差totfc的值

inti;

for(i=0;i

{

if(xx[i]%2)

odd++;

else

even++;

aver+=xx[i];

}

aver/=1000.0;

for(i=0;i

totfc+=(xx[i]-aver)*(xx[i]-aver);

totfc/=1000.0;

平方根:

【51】求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s

inti;

doublesum=0.0;

for(i=7;i

if(i%3==0&&i%7==0)

sum+=1.0*i;

sum=sqrt(sum);

returnsum;

【52】求出1到1000之内能被7或11整除但不能同时被7或11整除的所有整数放在数组a中

inti;

*n=0;

for(i=7;i<1000;i++)

if((i%7==0||i%11==0)&&(i%77!

=0))

a[(*n)++]=i;

【53】200个整数,求出最大数max及最大数的个数cnt和数组xx中能被3整除或能被7整除的算术平均值pj

inti,cnt1=0;

max=0;cnt=0;pj=0.0;

for(i=0;i

{

if((xx[i]%3)==0||(xx[i]%7)==0)

{

pj+=xx[i];

cnt1++;

}

if(xx[i]>max)

{

max=xx[i];

cnt=1;

}

elseif(xx[i]==max)

cnt++;

}

pj/=(float)cnt1;

【54-56】

选票:

内容均为字符0和1,1表示此人被选中,0表示此人未被选中,全选或不选无效

inti,j;

for(i=0;i<100;i++)

{

if(strcmp(xx[i],"1111111111"))

{

for(j=0;j<10;j++)

if(xx[i][j]=='1')

yy[j]++;

}

}

内容均为字符0和1,1表示此人被选中,0表示此人未被选中,若一张选票人数大于5个人时无效

inti,j,cnt;

for(i=0;i<100;i++)

{

cnt=0;

for(j=0;j<10;j++)

if(xx[i][j]=='1')

cnt++;

if(cnt<=5)

for(j=0;j<10;j++)

if(xx[i][j]=='1')

yy[j]++;

}

内容均为字符0和1,1表示此人被选中,0表示此人未被选中,若一张选票人数小于等于5个人时无效

if(cnt>5)

【57-62】

结构体操作:

100个销售记录,strcmp

按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列

inti,j,len;

PROtmp;

len=sizeof(tmp);

memset((PRO*)&tmp,0,len);

for(i=0;i<100;i++)

for(j=i+1;j<100;j++)

{

if(strcmp(sell[i].dm,sell[j].dm)<0||(sell[i].je

{

memcpy((PRO*)&tmp,(PRO*)&sell[i],len);

memcpy((PRO*)&sell[i],(PRO*)&sell[j],len);

memcpy((PRO*)&sell[j],(PRO*)&tmp,len);

}

}

按产品代码从小到大进行排列,若产品代码相同,则按金额从小到大进行排列

if(strcmp(sell[i].dm,sell[j].dm)>0||(sell[i].je>s

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1