最新全国计算机考试三级网络技术上机归类整理.docx
《最新全国计算机考试三级网络技术上机归类整理.docx》由会员分享,可在线阅读,更多相关《最新全国计算机考试三级网络技术上机归类整理.docx(122页珍藏版)》请在冰豆网上搜索。
![最新全国计算机考试三级网络技术上机归类整理.docx](https://file1.bdocx.com/fileroot1/2023-6/24/2c6b632e-53c7-4000-bf4f-d3ee5fa0d8f3/2c6b632e-53c7-4000-bf4f-d3ee5fa0d8f31.gif)
最新全国计算机考试三级网络技术上机归类整理
三级网络技术分类整理
一、300个四位数
1、题目27:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:
求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到OUT.DAT文件。
例如:
9123,9-1-2-3>0,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
9812,9-8-1-2<0,则该数不满足条件计算平均值pjz2.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,j;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(thou-hun-ten-data>0){b[cnt]=a[I];cnt++;}
}
for(I=0;Ifor(j=I+1;jif(b[I]>b[j])
{data=b[I];b[I]=b[j];b[j]=data;}
}
题目48:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数CNT,再把所有满足条件的四位数依次存入数组bb中,然后对数组bb的四位数按从小到大的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数
输出到OUT.DAT文件.
例如:
6712,6+2=7+1,则该数满足条件存入数组bb中,且个数CNT=CNT+1.
8129,8+1<>2+9,则该数不满足条件忽略.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,j;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(thou+data==hun+ten){b[cnt]=a[I];cnt++;}
}
for(I=0;Ifor(j=I+1;jif(b[I]>b[j])
{data=b[I];b[I]=b[j];b[j]=data;}
}
题目49:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:
求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到OUT.DAT文件。
例如:
9123,9-1-2-3>0,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
9812,9-8-1-2<0,则该数不满足条件计算平均值pjz2.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,n=0;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(thou-hun-ten-data>0)
{cnt++;pjz1+=a[I];}
else{n++;pjz2+=a[I];}
}
pjz1/=cnt;pjz2/=n;
}
题目53:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数输出到OUT.DAT文件.
例如:
1239,9-1-2-3>0,则该数满足条件存入数组b中,且个数cnt=cnt+1.
8129,9-8-1-2<0,则该数不满足条件忽略。
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,j;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(data-thou-hun-ten>0){b[cnt]=a[I];cnt++;}
}
for(I=0;Ifor(j=I+1;jif(b[I]
{data=b[I];b[I]=b[j];b[j]=data;}
}
题目54:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数CNT,再把所有满足条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数输出到OUT.DAT文件.
例如:
7153,7+1=5+3,则该数满足条件存入数组bb中,且个数CNT=CNT+1.
8129,8+1<>2+9,则该数不满足条件忽略.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,j;
for(I=0;I<300;I++)
{thou=a[I]/1000;
hun=a[I]%1000/100;
ten=a[I]%100/10;
data=a[I]%10;
if(thou+hun==data+ten){b[cnt]=a[I];cnt++;}
}
for(I=0;Ifor(j=I+1;jif(b[I]
{data=b[I];b[I]=b[j];b[j]=data;}
}
或者:
jsValue()
{intq,b,s,g,i,j;
for(i=0;i<300;i++)
{q=a[i]/1000;
b=a[i]/100%10;
s=a[i]/10%10;
g=a[i]%10;
if(q+g==b+s)
b[cnt++]=a[i];
}
for(i=0;ifor(j=i+1;jif(b[i]>b[j])
{q=b[i];b[i]=b[j];b[j]=q;}
}
jsvalue()
{inti,k,m,a1,a2,a3,a4,j=0;
for(i=0;i<300;i++)
{a1=a[i]/1000;
a2=(a[i]%1000)/100;
a3=(a[i]%100)/10;
a4=a[i]%10;
if(a1+a2==a3+a4)
{cnt++;
b[j++]=a[i];}}
for(i=0;ifor(k=i+1;kif(b[i]
{m=b[i];b[i]=b[k];b[k]=m;}
}
题目55:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到OUT.DAT文件。
例如:
5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。
9812是非素数,则该数不满足条件忽略。
注意:
部分源程序已给出。
程序中已定义数组:
a[300],b[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intj,I,value;
for(I=0;I<300;I++)
if(isP(a[I])){b[cnt]=a[I];cnt++;}
for(I=0;Ifor(j=I+1;jif(b[I]>b[j])
{value=b[I];b[I]=b[j];b[j]=value;}
}
题目80:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,
例如:
1239,9-1-2-3>0,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
8129,9-8-1-2<0,则该数不满足条件计算平均值pjz2.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt,pjz1,pjz2.
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,n=0;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(data-thou-hun-ten>0)
{cnt++;pjz1+=a[I];}
else{n++;pjz2+=a[I];}
}
pjz1/=cnt;pjz2/=n;
}
jsvalue()
{inti,a1,a2,a3,a4;
for(i=0;i<300;i++)
{a1=a[i]/1000;a2=(a[i]%1000)/100;
a3=(a[i]%100)/10;a4=a[i]%10;
if(a4-a1-a2-a3>0)
{cnt++;
pjz1+=a[i];}
else
pjz2+=a[i];}
pjz1/=cnt;pjz2/=(300-cnt);
}
题目81:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:
求出千位数上的数加百位数等于十位数上的数加个位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到OUT.DAT文件。
例如:
7153,7+1=5+3,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
8129,8+1<>2+9,则该数不满足条件计算平均值pjz2.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,thou,hun,ten,data,n=0;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(thou+hun==ten+data)
{cnt++;pjz1+=a[I];}
else{n++;pjz2+=a[I];}
}
pjz1/=cnt;pjz2/=n;
}
题目82:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:
求出所有这些四位数是素数的个数CNT,再求出所有满足此条件的四位数平均值PJZ1,以及不满足条件的四位数平均值PJZ2,最后调用写函数WRITEDAT()把结果CNT,PJZ1,PJZ2输出到OUT.DAT文件.
例如:
5591是素数,则该数满足条件计算平均值PJZ1,且个数CNT=CNT+1.
9812是非素数,则该数不满足条件计算平均值PJZ2。
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt,pjz1,pjz2.
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI;
for(I=0;I<300;I++)
if(isP(a[I])){pjz1+=a[I];cnt++;}
elsepjz2+=a[I];
pjz1=pjz1/cnt;
pjz2=pjz2/(300-cnt);
}
题目87:
已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsvalue(),其功能是:
求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到OUT.DAT文件。
例如:
6712,6+2=7+1,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
8129,8+9<>1+2,则该数不满足条件计算平均值pjz2.
注意:
部分源程序已给出。
程序中已定义数组:
a[300],已定义变量:
cnt
请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
voidjsValue()/*标准答案*/
{intI,n=0,thou,hun,ten,data;
for(I=0;I<300;I++)
{thou=a[I]/1000;hun=a[I]%1000/100;
ten=a[I]%100/10;data=a[I]%10;
if(thou+data==hun+ten)
{cnt++;pjz1+=a[I];}
else{n++;pjz2+=a[I];}
}
pjz1/=cnt;pjz2/=n;
}
二、f(p)
题目8:
函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS1.DAT中。
替代关系:
f(p)=p*11mod256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符进行替代。
注意:
部分源程序已给出。
原始数据文件存放的格式是:
每行的宽度均小于80个字符。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
------------------------------
voidencryptChar()/*标准答案*/
{intI;
char*pf;
for(I=0;I{pf=xx[I];
while(*pf!
=0)
{if(*pf*11%256>130||*pf*11%256<=32);
else
*pf=*pf*11%256;
pf++;}
}
}
或者:
voidencryptChar()
{inti,j;
char*p;
for(i=0;ifor(j=0;j{p=(xx[i][j]*11)%256;
if(p<=32||p>130)
;
elsexx[i][j]=p;}
}
题目18:
函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。
替代关系:
f(p)=p*11mod256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。
注意:
部分源程序已给出。
原始数据文件存放的格式是:
每行的宽度均小于80个字符。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
------------------------------
voidencryptChar()/*标准答案*/
{intI;
char*pf;
for(I=0;I{pf=xx[I];
while(*pf!
=0)
{if(*pf%2==0||*pf*11%256<=32)
;
else
*pf=*pf*11%256;
pf++;
}}
}
或者:
voidencryptChar()
{inti,j;
char*p;
for(i=0;ifor(j=0;j{p=(xx[i][j]*11)%256;
if(p<=32||xx[i][j]%2==0)
;
elsexx[i][j]=p;}
}
题目36:
函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS6.DAT中。
替代关系:
f(p)=p*11mod256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是数字0至9,则该字符不变,否则将f(p)所对应的字符进行替代。
注意:
部分源程序已给出。
原始数据文件存放的格式是:
每行的宽度均小于80个字符。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
------------------------------
voidencryptChar()/*标准答案*/
{intI;
char*pf;
for(I=0;I{pf=xx[I];
while(*pf!
=0)
{if((*pf*11%256>='0'&&*pf*11%256<='9')||*pf*11%256<=32)
{pf++;continue;}
*pf=*pf*11%256;
pf++;}}
}
或者:
voidencryptChar()
{
inti,j,strl;
intt;
for(i=0;i{
strl=strlen(xx[i]);
for(j=0;j{
t=xx[i][j]*11%256;
if(t<=32||(t>='0'&&t<='9'))continue;
xx[i][j]=t;
}
}
}
题目37:
函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS6.DAT中。
替代关系:
f(p)=p*11mod256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是大写字母或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。
注意:
部分源程序已给出。
原始数据文件存放的格式是:
每行的宽度均小于80个字符。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
------------------------------
voidencryptChar()/*标准答案*/
{intI;
char*pf;
for(I=0;I{pf=xx[I];
while(*pf!
=0)
{if((*pf>='A'&&*pf<='Z')||*pf*11%256<=32)
{pf++;continue