首页 2010年九月三级网络技术,数据库技术上机南开100题库

2010年九月三级网络技术,数据库技术上机南开100题库

举报
开通vip

2010年九月三级网络技术,数据库技术上机南开100题库 知博网 zhiblog.com 计算机等级考试专题 第 1 页 共 43 页 ☆题目 1 请编写一个函数 jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数 m且紧靠 m的 k个素数存入数组 xx 传回。 最后调用函数writeDat()读取 10组数据,分别得出结果且把结果输出到文件 out.dat中。 部分源程序存在文件 prog1.c中。 例如:若输入 17 5 则应输出:19,23,29,31,37。 请勿改动主函数main()和写函数writeDat()的内容。...

2010年九月三级网络技术,数据库技术上机南开100题库
知博网 zhiblog.com 计算机等级考试专题 第 1 页 共 43 页 ☆题目 1 请编写一个函数 jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数 m且紧靠 m的 k个素数存入数组 xx 传回。 最后调用函数writeDat()读取 10组数据,分别得出结果且把结果输出到文件 out.dat中。 部分源程序存在文件 prog1.c中。 例如:若输入 17 5 则应输出:19,23,29,31,37。 请勿改动主函数main()和写函数writeDat()的内容。 intintintint isP(intisP(intisP(intisP(int m)m)m)m) {{{{ intintintint i;i;i;i; for(i=2;i0;m++)for(m=m+1;k>0;m++)for(m=m+1;k>0;m++)for(m=m+1;k>0;m++) if(isP(m))if(isP(m))if(isP(m))if(isP(m)) {{{{ xx[s++]=m;xx[s++]=m;xx[s++]=m;xx[s++]=m;k--;}k--;}k--;}k--;} }}}} 题目 2 已知数据文件 IN.DAT中存有 200个四位数,并已调用读函数 readDat()把这些数存入数组 a中,请考生编制一函 数 jsVal()jsVal()jsVal()jsVal(),其功能是:如果四位数各位上的数字均是 0或 2或 4或 6或 8,则统计出满足此条件的个数 cnt,并 把这些四位数按从大到小的顺序存入数组 b中。最后 main( )函数调用写函数 writeDat()把结果 cnt以及数组 b中 符合条件的四位数输出到OUT.DAT文件中。 voidvoidvoidvoid jsVal()jsVal()jsVal()jsVal() {{{{ intintintint i,j,qw,bw,sw,gw;i,j,qw,bw,sw,gw;i,j,qw,bw,sw,gw;i,j,qw,bw,sw,gw; for(i=0;i=0;j--)for(j=strlen(xx[i])-1;j>=0;j--)for(j=strlen(xx[i])-1;j>=0;j--)for(j=strlen(xx[i])-1;j>=0;j--) {{{{ k=0;k=0;k=0;k=0; memset(tem,0,80);memset(tem,0,80);memset(tem,0,80);memset(tem,0,80); if(xx[i][j]=='o')if(xx[i][j]=='o')if(xx[i][j]=='o')if(xx[i][j]=='o') {righto=j;{righto=j;{righto=j;{righto=j; for(s=righto+1;s=0;j--)for(j=strl-1;j>=0;j--)for(j=strl-1;j>=0;j--)for(j=strl-1;j>=0;j--) {{{{ if(isalpha(xx[i][j]))if(isalpha(xx[i][j]))if(isalpha(xx[i][j]))if(isalpha(xx[i][j])) k++;k++;k++;k++; elseelseelseelse {{{{ for(m=1;m<=k;m++)for(m=1;m<=k;m++)for(m=1;m<=k;m++)for(m=1;m<=k;m++) str[s++]=xx[i][j+m];str[s++]=xx[i][j+m];str[s++]=xx[i][j+m];str[s++]=xx[i][j+m]; k=0;k=0;k=0;k=0; }}}} if(!isalpha(xx[i][j]))if(!isalpha(xx[i][j]))if(!isalpha(xx[i][j]))if(!isalpha(xx[i][j])) str[s++]='str[s++]='str[s++]='str[s++]=' ';';';'; }}}} for(m=1;m<=k;m++)for(m=1;m<=k;m++)for(m=1;m<=k;m++)for(m=1;m<=k;m++) str[s++]=xx[i][j+m];str[s++]=xx[i][j+m];str[s++]=xx[i][j+m];str[s++]=xx[i][j+m]; str[s]='\0';str[s]='\0';str[s]='\0';str[s]='\0'; strcpy(xx[i],str);strcpy(xx[i],str);strcpy(xx[i],str);strcpy(xx[i],str); }}}} }}}} ☆题目 5(整数排序题) 在文件 in.dat中有 200个正整数,且每个数均在 1000至 9999之间。函数 ReadDat()读取这 200个数存放到数组 aa中。请编制函数 jsSort()jsSort()jsSort()jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条 件的前 10个数依次存入数组 bb中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数 WriteDat()把结果 bb输出到文件 out.dat中。 例:处理前 6012 5099 9012 7025 8088 知博网 zhiblog.com 计算机等级考试专题 第 3 页 共 43 页 处理后 9012 6012 7025 8088 5099 voidvoidvoidvoid jsSort()jsSort()jsSort()jsSort() {{{{ intintintint i,j,data;i,j,data;i,j,data;i,j,data; for(i=0;i<199;i++)for(i=0;i<199;i++)for(i=0;i<199;i++)for(i=0;i<199;i++) for(j=i+1;j<200;j++)for(j=i+1;j<200;j++)for(j=i+1;j<200;j++)for(j=i+1;j<200;j++) if(aa[i]%1000>aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]aa[j])if(aa[i]%1000aa[j])if(aa[i]%1000aa[j])if(aa[i]%1000aa[j]) {data=aa[i];aa[i]=aa[j];aa[j]=data;}{data=aa[i];aa[i]=aa[j];aa[j]=data;}{data=aa[i];aa[i]=aa[j];aa[j]=data;}{data=aa[i];aa[i]=aa[j];aa[j]=data;} for(i=0;i<10;i++)for(i=0;i<10;i++)for(i=0;i<10;i++)for(i=0;i<10;i++) bb[i]=aa[i];bb[i]=aa[i];bb[i]=aa[i];bb[i]=aa[i]; }}}} *************************************************************************** ☆题目 7(结构体操作题) 已知在文件 IN.DAT中存有 100个产品销售记录,每个产品销售记录由产品代码 dm(字符型 4位),产品名称mc(字 符型 10位),单价 dj(整型),数量 sl(整型),金额 je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数 ReadDat()是读取这 100个销售记录并存入结构数组 sell中。请编制函数 SortDat()SortDat()SortDat()SortDat(),其功能要求:按产品代码从 大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组 sell中,最后调 用函数WriteDat()把结果输出到文件 OUT6.DAT中。 voidvoidvoidvoid SortDat()SortDat()SortDat()SortDat() {int{int{int{int iiii,j;,j;,j;,j; PROPROPROPRO xy;xy;xy;xy; for(for(for(for(iiii=0;=0;=0;=0;iiii<99;<99;<99;<99;iiii++)++)++)++) for(j=for(j=for(j=for(j=iiii+1;j<100;j++)+1;j<100;j++)+1;j<100;j++)+1;j<100;j++) if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[iiii].dm,sell[j].dm)<0||strcmp(sell[i].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)<0||strcmp(sell[i].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)<0||strcmp(sell[i].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)<0||strcmp(sell[i].dm,sell[j].dm)==0&&sell[iiii].je130)if(xx[i][j]*11%256<=32||xx[i][j]*11%256>130)if(xx[i][j]*11%256<=32||xx[i][j]*11%256>130)if(xx[i][j]*11%256<=32||xx[i][j]*11%256>130) continue;continue;continue;continue; elseelseelseelse xx[i][j]=xx[i][j]*11%256;xx[i][j]=xx[i][j]*11%256;xx[i][j]=xx[i][j]*11%256;xx[i][j]=xx[i][j]*11%256; }}}} ****************************************************************************** ★☆题目 9(字符串排序题) 函数 ReadDat()实现从文件 IN.DAT中读取一篇英文文章存入到字符串数组 xx中,请编制函数 SortCharD()SortCharD()SortCharD()SortCharD(),其 函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组 xx中, 最后调用函数writeDat()把结果 xx输出到文件OUT2.DAT中。 例:原文:dAe,BfC. CCbbAA 结果:fedCBA. bbCCAA voidvoidvoidvoid SortCharD(void)SortCharD(void)SortCharD(void)SortCharD(void) {int{int{int{int iiii,j,k,strl;,j,k,strl;,j,k,strl;,j,k,strl; charcharcharchar ch;ch;ch;ch; for(for(for(for(iiii=0;=0;=0;=0;iiii='a'&&xx[i][j]<='y')if(xx[i][j]>='a'&&xx[i][j]<='y')if(xx[i][j]>='a'&&xx[i][j]<='y')if(xx[i][j]>='a'&&xx[i][j]<='y') xx[i][j]+=1;xx[i][j]+=1;xx[i][j]+=1;xx[i][j]+=1; }}}} }}}} ******************************************************************************* ☆题目 11(字符串字母移位题) 程序 prog1.c的功能是:把 s 字符串中的所有字母改写成该字母的下一个字母,字母 z改写成字母 a。要求大写 字母仍为大写字母,小写字母仍为小写字母,其它字符不做改变。 请考生编写函数 chg(charchg(charchg(charchg(char *s)*s)*s)*s)实现程序要求,最后调用函数 readwriteDAT( )把结果输出到文件 bc1.out中。 例如:s 字符串中原有的内容为:Mn.123Zxy,则调用该函数后,结果为:No.123Ayz。 voidvoidvoidvoid chg(charchg(charchg(charchg(char *s)*s)*s)*s) {{{{intintintint IIII;;;; for(for(for(for(IIII=0;=0;=0;=0;IIII='a'&&s>='a'&&s>='a'&&s>='a'&&s[i][i][i][i]<='y'<='y'<='y'<='y'||s[i]||s[i]||s[i]||s[i] >='A'&&s>='A'&&s>='A'&&s>='A'&&s[i][i][i][i]<='Y')<='Y')<='Y')<='Y') ssss[i][i][i][i]+=1;+=1;+=1;+=1; }}}} ***************************************************************************** ★☆题目 12(结构体运算题题) 已知在文件 IN.DAT中存有 100个产品销售记录,每个产品销售记录由产品代码 dm(字符型 4位),产品名称mc(字 符型 10位),单价 dj(整型),数量 sl(整型),金额 je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数 ReadDat()是读取这 100个销售记录并存入结构数组 sell中。请编制函数 SortDat()SortDat()SortDat()SortDat(),其功能要求: 按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组 sell中, voidvoidvoidvoid SortDat()SortDat()SortDat()SortDat() {int{int{int{int iiii,j;,j;,j;,j; PROPROPROPRO xy;xy;xy;xy; for(for(for(for(iiii=0;=0;=0;=0;iiii<99;<99;<99;<99;iiii++)++)++)++) for(j=for(j=for(j=for(j=iiii+1;j<100;j++)+1;j<100;j++)+1;j<100;j++)+1;j<100;j++) if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[iiii].mc,sell[j].mc)>0||strcmp(sell[].mc,sell[j].mc)>0||strcmp(sell[].mc,sell[j].mc)>0||strcmp(sell[].mc,sell[j].mc)>0||strcmp(sell[iiii].mc,sell[j].mc)==0&&sell[].mc,sell[j].mc)==0&&sell[].mc,sell[j].mc)==0&&sell[].mc,sell[j].mc)==0&&sell[iiii].je>sell[j].je)].je>sell[j].je)].je>sell[j].je)].je>sell[j].je) {xy=sell[{xy=sell[{xy=sell[{xy=sell[iiii];sell[];sell[];sell[];sell[iiii]=sell[j];sell[j]=xy;}]=sell[j];sell[j]=xy;}]=sell[j];sell[j]=xy;}]=sell[j];sell[j]=xy;} }}}} ************************************************************************** 题目 13(结构体运算题) 已知在文件 IN.DAT中存有 100个产品销售记录,每个产品销售记录由产品代码 dm(字符型 4位),产品名称mc(字 符型 10位),单价 dj(整型),数量 sl(整型),金额 je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数 ReadDat()是读取这 100个销售记录并存入结构数组 sell中。请编制函数 SortDat()SortDat()SortDat()SortDat(),其功能 要求:按产品代码从小到大进行排列,若产品代码相等,则按金额从大到小进行排列,最终排列结果仍存入结构 数组 sell中,最后调用函数 WriteDat()把结果输出到文件 OUT9.DAT中。 voidvoidvoidvoid SortDat()SortDat()SortDat()SortDat() {int{int{int{int iiii,j;,j;,j;,j; PROPROPROPRO xy;xy;xy;xy; for(for(for(for(iiii=0;=0;=0;=0;iiii<99;<99;<99;<99;iiii++)++)++)++) for(j=for(j=for(j=for(j=iiii+1;j<100;j++)+1;j<100;j++)+1;j<100;j++)+1;j<100;j++) 知博网 zhiblog.com 计算机等级考试专题 第 6 页 共 43 页 if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[if(strcmp(sell[iiii].dm,sell[j].dm)>0||strcmp(sell[].dm,sell[j].dm)>0||strcmp(sell[].dm,sell[j].dm)>0||strcmp(sell[].dm,sell[j].dm)>0||strcmp(sell[iiii].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)==0&&sell[].dm,sell[j].dm)==0&&sell[iiii].jea[j]&&a[]>a[j]&&a[]>a[j]&&a[]>a[j]&&a[iiii]%2)]%2)]%2)]%2) flag=1;flag=1;flag=1;flag=1; elseelseelseelse {flag=0;break;}{flag=0;break;}{flag=0;break;}{flag=0;break;} if(flag==1)if(flag==1)if(flag==1)if(flag==1) b[cntb[cntb[cntb[cnt++++++++]=a[]=a[]=a[]=a[iiii];];];]; }}}} for(for(for(for(iiii=0;=0;=0;=0;iiiib[j])]>b[j])]>b[j])]>b[j]) {flag=b[{flag=b[{flag=b[{flag=b[iiii];b[];b[];b[];b[iiii]=b[j];b[j]=flag;}]=b[j];b[j]=flag;}]=b[j];b[j]=flag;}]=b[j];b[j]=flag;} }}}} ********************************************************************* ★题目 15(整数各位数字运算排序题) 已知数据文件 IN.DAT中存有 200个四位数,并已调用读函数 readDat()把这些数存入数组 a中,请考生编制一函 数 jsVal()jsVal()jsVal()jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位 数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数 cnt并把这些四位数按从小到大的顺序存入数组 b中,最后调用写函数 writeDat()把结果 cnt以及数组 b中符合条 件的四位数输出到OUT.DAT文件中。 voidvoidvoidvoid jsVal()jsVal()jsVal()jsVal() {int{int{int{int iiii,j;,j;,j;,j; intintintint qw,bw,sw,gw;qw,bw,sw,gw;qw,bw,sw,gw;qw,bw,sw,gw; forforforfor ((((iiii=0;=0;=0;=0;iiiib[j])]>b[j])]>b[j])]>b[j]) {qw=b[{qw=b[{qw=b[{qw=b[iiii];b[];b[];b[];b[iiii]=b[j];b[j]=qw;}]=b[j];b[j]=qw;}]=b[j];b[j]=qw;}]=b[j];b[j]=qw;} }}}} *************************************************************************** ★☆题目 16(字符替换题) 函数 ReadDat()实现从文件 IN.DAT中读取一篇英文文章存入到字符串数组 xx中,请编制函数 StrCharJR()StrCharJR()StrCharJR()StrCharJR(),其 函数的功能是:以行为单位把字符串中所有字符的 ASCII值右移 4位,然后把右移后的字符 ASCII 值再加上原 字符的 ASCII 值,得到新的字符仍存入原字符串对应的位置上。最后把已处理的字符串仍按行重新存入字符串 数组 xx中,最后调用函数writeDat()把结果 xx输出到文件OUT8.DAT中。 知博网 zhiblog.com 计算机等级考试专题 第 7 页 共 43 页 voidvoidvoidvoid StrCharJR()StrCharJR()StrCharJR()StrCharJR() {int{int{int{int i,j;i,j;i,j;i,j; for(i=0;i>4);xx[i][j]+=(xx[i][j]>>4);xx[i][j]+=(xx[i][j]>>4);xx[i][j]+=(xx[i][j]>>4);(右移四位的表达方式) }}}} ********************************************************************** ☆题目 17 (亲朋字符替换题) 函数 READDAT()实现从文件 IN.DAT 中读取一篇英文文章存入到字符串数组XX中;请编制函数 CHA()CHA()CHA()CHA(),其函 数功能是:以行为单位把字符串中的第一个字符的 ASCII值加第二个字符的 ASCII值,得到第一个亲朋字符,第 二个字符的 ASCII值加第三个字符的 ASCII 值,得到第二个新字符,依此类推一直处理到最后第二个字符,最 后一个字符的 ASCII值加原第一个字符的 ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符 串对应的位置上。最后把已处理的字符串逆转后按行重新存入字符串数组 XX中,最后调用函数WRITEDAT()把 结果XX输出到文件 OUT9.DAT中.原始数据文件存放的格式是:每行的宽度均小于 80个字符,含标点符号和空格. voidvoidvoidvoid ChA(void)ChA(void)ChA(void)ChA(void) {{{{ intintintint i,j;i,j;i,j;i,j; charcharcharchar ch;ch;ch;ch; for(i=0;i
本文档为【2010年九月三级网络技术,数据库技术上机南开100题库】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_237280
暂无简介~
格式:pdf
大小:336KB
软件:PDF阅读器
页数:43
分类:工学
上传时间:2011-03-18
浏览量:16