2024年3月汇编全国计算机等级考试三级网络技术上机试题汇编(南(3)

2025-08-08

{int I,j,data;

for(I=0;I<199;I++) for(j=I+1;j<200;j++)

{if (aa[I]00

{data=aa[I];aa[I]=aa[j];aa[j]=data;} else if(aa[I]00==aa[j]00) if(aa[I]>aa[j])

{data=aa[I];aa[I]=aa[j];aa[j]=data;} }

for(I=0;I<10;I++) bb[I]=aa[I]; }

原程序如下: #include #include #include int aa[200],bb[10]; void jsSort() { }

void main() {

readDat(); jsSort(); writeDat();

system(\ }

readDat() {

FILE *in; int i;

in=fopen(\

for(i=0; i<200; i++) fscanf(in,\ fclose(in); }

writeDat()

{

FILE *out; int i; clrscr();

out=fopen(\ for(i=0; i<10; i++){

printf(\ fprintf(out,\ }

fclose(out); }

7:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产

品代码dm(字符型4

位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)四部分组成。其

中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell

中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则

按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把

结果输出到文件OUT10.DAT中。

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

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

void SortDat() /*标准答案*/ {int I,j; PRO xy;

for(I=0;I<99;I++) for(j=I+1;j<100;j++)

if(strcmp(sell[I].dm,sell[j].dm)<0) {xy=sell[I];sell[I]=sell[j];sell[j]=xy;} else if(strcmp(sell[I].dm,sell[j].dm)==0) if(sell[I].je

{xy=sell[I]; sell[I]=sell[j]; sell[j]=xy;} }

原程序如下: #include #include #include #include #include #define MAX 100 typedef struct{

char dm[5]; /*产品代码*/ char mc[11]; /*产品名称*/ int dj; /*单价*/

int sl; /*数量*/ long je; /*金额*/ }PRO;

PRO sell[MAX]; void ReadDat(); void WriteDat(); void SortDat() { }

void main()

{ memset(sell,0,sizeof(sell)); ReadDat(); SortDat(); WriteDat(); } void ReadDat() {FILE *fp;

char str[80],ch[11]; int i;

fp=fopen(\ for(i=0;i<100;i++){ fgets(str,80,fp);

memcpy(sell[i].dm,str,4); memcpy(sell[i].mc,str+4,10); memcpy(ch,str+14,4);ch[4]=0; sell[i].dj=atoi(ch);

memcpy(ch,str+18,5);ch[5]=0; sell[i].sl=atoi(ch);

sell[i].je=(long)sell[i].dj*sell[i].sl;} fclose(fp);}

void WriteDat(void) {FILE *fp; int i;

fp=fopen(\ for(i=0;i<100;i++){

fprintf(fp,\

sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);} fclose(fp);} 8:函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS1.DAT中。

替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的 ASCII值),如果计算后f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符进行替代。

注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

void encryptChar() /*标准答案*/ {int I; char *pf;

for(I=0;I

{if(*pf*11%6>130||*pf*11%6<=32); else

*pf=*pf*11%6; pf++; } } }

或者:

void encryptChar() { int i,j; char *p;

for(i=0;i130) ;

else xx[i][j]=p; } }

原程序如下: #include #include #include #include

unsigned char xx[50][80];

int maxline=0;/*文章的总行数*/ int ReadDat(void); void WriteDat(void); void encryptChar() { }

void main() {

clrscr();

if(ReadDat()){

printf(\数据文件ENG.IN不能打开!\\n\\007\ return; }

encryptChar(); WriteDat();

system(\ }

int ReadDat(void) {

FILE *fp; int i=0;

unsigned char *p;

if((fp=fopen(\ while(fgets(xx[i],80,fp)!=NULL){ p=strchr(xx[i],'\\n'); if(p)*p=0; i++; }

maxline=i; fclose(fp); return 0; }

void WriteDat(void) {

FILE *fp; int i;

fp=fopen(\ for(i=0;i

fclose(fp); } 9:函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函 数SortCharD( ), 其函数的功能是: 以行为单位对字符按从大到小的顺序进行排序, 排序后的结果仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT2.DAT中。

例: 原文: dAe,BfC. CCbbAA

结果: fedCBA., bbCCAA

原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。

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

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

------------类型:字符串(单词)的倒置和删除。 void SortCharD(void) /*标准答案*/ {int I,j,k,strl; char ch;

for(I=0;I

{ch=xx[I][j]; xx[I][j]=xx[I][k]; xx[I][k]=ch;} }}


2024年3月汇编全国计算机等级考试三级网络技术上机试题汇编(南(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:商务翻译

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219