三级计算机网络上机题精华50题.docx

上传人:b****2 文档编号:24418475 上传时间:2023-05-27 格式:DOCX 页数:57 大小:31.92KB
下载 相关 举报
三级计算机网络上机题精华50题.docx_第1页
第1页 / 共57页
三级计算机网络上机题精华50题.docx_第2页
第2页 / 共57页
三级计算机网络上机题精华50题.docx_第3页
第3页 / 共57页
三级计算机网络上机题精华50题.docx_第4页
第4页 / 共57页
三级计算机网络上机题精华50题.docx_第5页
第5页 / 共57页
点击查看更多>>
下载资源
资源描述

三级计算机网络上机题精华50题.docx

《三级计算机网络上机题精华50题.docx》由会员分享,可在线阅读,更多相关《三级计算机网络上机题精华50题.docx(57页珍藏版)》请在冰豆网上搜索。

三级计算机网络上机题精华50题.docx

三级计算机网络上机题精华50题

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第01套:

(和第28套对比)

已知数据文件IN.DAT中存有300个四位数,并已调用读函数readDat()把这些

数存入数组a中,请编制一函数jsValue(),其功能是:

求出千位数上的数加百位数

上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足此条件的四位

数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。

最后

main()函数调用写函数writeDat()把数组b中的数输出到文件OUT.DAT中。

例如:

7153,7+1=5+3,则该数满足条件存入数组b中,且个数cnt=cnt+1。

8129,8+1!

=2+9,则该数不满足条件忽略。

注意:

部分源程序存在文件PROG1.C文件中。

程序中已定义数组:

a[300],b[300],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和

写函数writeDat()的内容。

【参考答案】

jsValue()

{inti,j;/*定义变量*/

inta1,a2,a3,a4;

inttemp;

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

{a1=a[i]%10;/*数位分解*/

a2=a[i]%100/10;

a3=a[i]%1000/100;

a4=a[i]/1000;

if(a4+a3==a2+a1)/*判断条件*/

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

}

for(i=0;i

for(j=i+1;j

if(b[i]

{temp=b[i];

b[i]=b[j];

b[j]=temp;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第2套:

函数ReadDat()实现从文件IN.DAT中读取一篇英文文章,存入到无符号字符串

数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符

进行替代,其替代值仍存入数组xx所对应的位置上,最后调用函数WriteDat()把结

果xx输出到文件OUT.DAT中。

替代关系:

f(p)=p*11mod256,mod为取余运算,p是数组xx中某一个字符的

ASCII值,f(p)是计算后无符号的整型值(注意:

中间变量定义成整型变量),如果

原字符是数字字符0至9或计算后f(p)值小于等于32,则该字符不变,否则用f(p)替

代所对应的字符。

注意:

部分源程序存放在PROG1.C中,原始数据文件存放的格式是:

每行的宽

度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。

请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()

的内容。

【参考答案】

voidencryptChar()

{inti,j,val;/*定义变量*/

for(i=0;i

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

{val=xx[i][j]*11%256;/*替代关系*/

if(xx[i][j]>='0'&&xx[i][j]<='9'||val<=32)/*判断条件*/

continue;

elsexx[i][j]=val;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第3套:

已知数据文件IN.DAT中存有300个四位数,并已调用读函数readDat()把这些

数存入数组a中,请编制一函数jsValue(),其功能是:

求出千位数上的数加个位

数上的数等于百位数上的数加十位数上的数的个数cnt,再把所有满足此条件的四

位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。

最后

main()函数调用写函数writeDat()把数组b中的数输出到文件OUT.DAT中。

例如:

6712,6+2=7+1,则该数满足条件存入数组b中,且个数cnt=cnt+1。

8129,8+9!

=1+2,则该数不满足条件忽略。

注意:

部分源程序存在文件PROG1.C文件中。

程序中已定义数组:

a[300],b[300],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()

和写函数writeDat()的内容。

【参考答案】

voidjsValue()

{inti,j;/*定义变量*/

inta1,a2,a3,a4;

inttemp;

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

{a1=a[i]%10;/*数位分解*/

a2=a[i]%100/10;

a3=a[i]%1000/100;

a4=a[i]/1000;

if(a4+a1==a3+a2)/*判断条件*/

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

}

for(i=0;i

for(j=i+1;j

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

{temp=b[i];

b[i]=b[j];

b[j]=temp;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第4套:

函数ReadDat()实现从文件IN.DAT中读取一篇英文文章,存入到无符号字符串

数组xx中,请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符

进行替代,其替代值仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结

果xx输出到文件OUT.DAT中。

替代关系:

f(p)=p*17mod256,mod为取余运算,p是数组xx中某一个字符的

ASCII值,f(p)是计算后的无符号整型值(注意:

中间变量定义成整型变量),如果

计算后f(p)值小于等于32或f(p)是奇数时,则该字符不变,否则用f(p)替代所对应

的字符。

注意:

部分源程序存放在PROG1.C中,原始数据文件存放的格式是:

每行的宽

度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。

请勿改动主函数main()、读函数ReadDat()和输出函数WriteDat()的内容。

【参考答案】

voidencryptChar()

{inti,j,val;/*定义变量*/

for(i=0;i

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

{val=xx[i][j]*17%256;/*替代关系*/

if(val<=32||val%2==1)/*判断条件*/

continue;

elsexx[i][j]=val;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第5套:

函数ReadDat()实现从文件IN.DAT中读取一篇英文文章,存入到无符号字符串

数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符

进行替代,其替代值仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结

果xx输出到文件OUT.DAT中。

替代关系:

f(p)=p*11mod256,mod为取余运算,p是数组xx中某一个字符的

ASCII值,f(p)是计算后无符号的整型值(注意:

中间变量定义成整型变量),如果

原字符是大写字母或计算后f(p)值小于等于32,则该字符不变,否则用f(p)替代

所对应的字符。

注意:

部分源程序存放在PROG1.C中,原始数据文件存放的格式是:

每行的宽

度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。

请勿改动主函数main()、读函数ReadDat()和输出函数WriteDat()的内容。

【参考答案】

voidencryptChar()

{inti,j,val;/*定义变量*/

for(i=0;i

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

{val=xx[i][j]*11%256;/*替代关系*/

if(xx[i][j]>='A'&&xx[i][j]<='Z'||val<=32)/*判断条件*/

continue;

elsexx[i][j]=val;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第6套:

将文件IN.DAT中的200个整数读至数组xx中。

请编制jsValue()函数,要求:

求出数组xx中的数值为奇数的个数cnt1和数值为偶数的个数cnt2以及数组xx下标

为奇数的元素值的算术平均值pj。

结果cnt1,cnt2,pj输出到OUT.DAT中。

注意:

部分源程序存在文件PROG1.C文件中。

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数read_dat()

和输出函数writeDat()的内容。

【参考答案】

voidjsValue()

{inti;/*定义变量*/

for(i=0;i

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

elsecnt2++;

if(i%2==1)pj+=xx[i];

}

pj/=(N/2);/*求平均值*/

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第7套:

程序PROG1.C的功能是:

将大于整数m且紧靠m的k个素数存入数组xx。

考生编写函数num(intm,intk,intxx[])实现程序的要求,最后调用函

数readwriteDAT()把结果输出到out.dat文件中。

例如,若输入17,5,则应输出:

19,23,29,31,37。

注意:

部分源程序存在文件PROG1.C文件中。

请勿改动数据文件in.dat中的任何数据、主函数main()和输出函数

readwriteDAT()的内容。

【参考答案】

voidnum(intm,intk,intxx[])

{intcnt=0;/*定义变量*/

while(cnt

{m++;

if(isP(m))xx[cnt++]=m;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第8套:

已知数据文件IN1.DAT和IN2.DAT中分别存有100个两位十进制数,并且已

调用读函数readDat()把这两个文件中的数存入数组a和b中,请考生编制一个

函数jsVal(),实现的功能是依次对数组a和b中的数按条件重新组成一个新数

并依次存入数组c中,再对数组c中的数按从小到大的顺序进行排序,最后调用

输出函数writeDat()把结果c输出到文件OUT.DAT中。

组成新数的条件:

如果数组a和b中相同下标位置的数均是奇数,则数组a

中十位数字为新数的千位数字,个位数字仍为新数的个位数字,数组b中的十

位数字为新的百位数字,个位数字为新的十位数字,这样组成的新数并存入

数组c中。

例如:

a:

123124152115

b:

324517271815

c:

345112751155

排序后c:

115512753451

注意:

部分源程序存在文件PROG1.C文件中。

程序中已定义:

a[100]、b[100]和c[100]。

请勿改动数据文件IN1.DAT和IN2.DAT中的任何数据、主函数main()、读函

数readDat()和写函数writeDat()的内容。

【参考答案】

voidjsVal()

{inti,j;/*定义变量*/

inta1,a2,b1,b2;

intab;

inttemp;

for(i=0;i

{a1=a[i]%10;/*数位分解*/

a2=a[i]/10;

b1=b[i]%10;

b2=b[i]/10;

ab=a2*1000+b2*100+b1*10+a1;/*数位重组*/

if(a[i]%2==1&&b[i]%2==1)/*判断条件*/

c[cnt++]=ab;

}

for(i=0;i

for(j=i+1;j

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

{temp=c[i];

c[i]=c[j];

c[j]=temp;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第9套:

编写一个函数findStr(char*str,char*substr),该函数统计一个长度为2

的子字符串substr在另一个字符串str中出现的次数,该次数作为函数值返回。

例如,假定输入的字符串为"asdasasdfgasdaszx67asdmklo",子字符串

为"as",函数返回值是6。

函数ReadWrite()实现从文件in.dat中读取两个字符串,并调用函数findStr(),

最后把结果输出到文件out.dat中。

注意:

部分源程序存在文件PROG1.C中。

请勿改动主函数main()和其它函数中

的任何内容,仅在函数findStr()的花括号中填入你编写的若干语句。

【参考答案】

intfindStr(char*str,char*substr)

{inti,cnt=0;/*定义变量*/

for(i=0;i<80;i++)/*统计次数*/

if(*(str+i)==*substr&&*(str+i+1)==*(substr+1))/*判断条件*/

cnt++;

returncnt;

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第10套:

已知在文件in.dat中存有200组数据,每组有3个数,每个数均是三位数。

数readDat()是读取这200组数据存放到结构数组aa中。

请编制函数jsSort(),其

函数的功能是:

要求在200组数据中找出条件为每组数据中的第二个数大于第一个

数加第三个数之和,其中满足条件的个数作为函数jsSort()的返回值,同时把满

足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第二个数加第

三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结

果仍重新存入结构数组bb中,最后调用函数writeDat()把结果bb输出到out.dat文

件中。

注意:

部分源程序存在文件PROG1.C文件中。

请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readDat()

和写函数writeDat()的内容。

【参考答案】

intjsSort()

{inti,j;/*定义变量*/

Datatemp;

intcnt=0;

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

if(aa[i].x2>aa[i].x1+aa[i].x3)/*判断条件*/

bb[cnt++]=aa[i];

for(i=0;i

for(j=i+1;j

if(bb[i].x2+bb[i].x3

{temp=bb[i];

bb[i]=bb[j];

bb[j]=temp;

}

returncnt;/*返回函数值*/

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第11套:

函数readDat()是从文件in.dat中读取20行数据存放到字符串数组xx中(每行

字符串长度均小于80)。

请编制函数jsSort(),其函数的功能是:

以行为单位对字

符串按下面给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,

最后调用函数writeDat()把结果xx输出到文件out.dat中。

条件:

从字符串中间一分为二,左边部分按字符的ASCII值降序排序,右边部

分不作处理,排序后,左边部分与右边部分按例子所示进行交换。

如果原字符串

长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。

例如:

位置012345678

源字符串abcdhgfe

123498765

则处理后字符串hgfedcba

876594321

注意:

部分源程序存在文件PROG1.C文件中。

请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readDat()

和写函数writeDat()的内容。

【参考答案】

voidjsSort()

{unsignedinti,j,k;/*定义变量*/

inttemp;

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

{for(j=0;j

for(k=j+1;k

if(xx[i][j]

{temp=xx[i][j];

xx[i][j]=xx[i][k];

xx[i][k]=temp;

}

for(j=0;j

{k=j+(strlen(xx[i])+1)/2;

temp=xx[i][j];

xx[i][j]=xx[i][k];

xx[i][k]=temp;

}

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第12套:

已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。

其中:

金额=单价*数量计算得出。

函数ReadDat()读取这100个销售记录并存入结构数组sell中。

请编制函数SortDat(),其功能要求:

按金额从大到小进行排列,若金额相等,则按产品代码从大到小进行排列,最终排列结果仍存入结构数组sell中。

最后main()函数调用函数WriteDat()把结果输出到文件OUT.DAT中。

提示:

若中间变量为PROtemp,则可以直接使用结构赋值语句进行解题;产品代码比较请用函数strcmp进行解题。

例如:

sell[i]=temp;

注意:

部分源程序存放在PROG1.C中。

请勿改动主函数main()、读函数ReadDat()和输出函数WriteDat()的内容。

【参考答案】

voidSortDat()

{inti,j;/*定义变量*/

PROtemp;

for(i=0;i

for(j=i+1;j

if(sell[i].je

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

{temp=sell[i];

sell[i]=sell[j];

sell[j]=temp;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第13套:

已知文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:

若一个四位数的千位数位置上的值小于等于百位数位置上的值,百位数位置上的值小于等于十位数位置上的值,以及十位数位置上的值小于等于个位数位置上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到文件OUT.DAT中。

注意:

部分源程序存在文件PROG1.C文件中。

程序中已定义数组:

a[200],b[200],已定义变量:

cnt。

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

【参考答案】

voidjsVal()

{inti,j;/*定义变量*/

inta1,a2,a3,a4;

inttemp;

for(i=0;i

{a1=a[i]%10;/*数位分解*/

a2=a[i]%100/10;

a3=a[i]%1000/100;

a4=a[i]/1000;

if(a4<=a3&&a3<=a2&&a2<=a1&&a[i]%2==0)/*判断条件*/

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

}

for(i=0;i

for(j=i+1;j

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

{temp=b[i];

b[i]=b[j];

b[j]=temp;

}

}

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

第14套:

函数ReadDat()实现从文件IN.DAT中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx对应的位置上,最后调用函数WriteDat()把结果xx输出到文件OUT.DAT中。

替代关系:

f(p)=p*11mod256,mod为取余运算,p是数组xx中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:

中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是"0"至"9",则该字符不变,否则用f(p)替代所对应的字符。

注意:

部分源程序存放在PROG1.C中,原始数据文件存放的格式是:

每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。

请勿改动主函数main()、读函数ReadDat()和输出函数WriteDat()的内容。

【参考答案】

voidencryptChar()

{inti,j,val;/*定义变量*/

for(i=0;i

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

{val=xx[i][j]*11%256;/*替代关系*/

if(val<=32||val>='0'&&val

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

当前位置:首页 > 党团工作 > 思想汇报心得体会

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

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