国家三级(数据库技术)机试模拟试卷6(共9题)_第1页
国家三级(数据库技术)机试模拟试卷6(共9题)_第2页
国家三级(数据库技术)机试模拟试卷6(共9题)_第3页
国家三级(数据库技术)机试模拟试卷6(共9题)_第4页
国家三级(数据库技术)机试模拟试卷6(共9题)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家三级(数据库技术)机试模拟试卷6(共9套)(共9题)国家三级(数据库技术)机试模拟试卷第1套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知在文件IN3.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量sl(整型)、金额je(长整型)五部分组成。其中:金额=单价×数量。函数ReadDat()的功能是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则:按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT3.DAT中。注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。【试题程序】#include<stdio.h>#include<memory.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstruet{chardm[5];/*产品代码*/charmc[11];/*产品名称*/intdj;/*单价*/intsl;/*数量*/longje;/*金额*/}PRO;PROsell[MAX];voidReadDat();voidWriteDat()voidSortDat(){}voidmain{){memset(sell,0,sizeof(sell));ReadDat();SortDat();WriteDat();}voidReadDat(){FILE*fp;charstr[80],ch[11];inti;fp=fopen("IN3.DAT","r");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;selt[i].sl=atoi(ch);sell[i].je=(long)sell[i].dj*sell[i].sl;}fclose(fp);}voidWriteDat(void){FILE*fp;inti;fp=fopen("OUT3.DAT","w");for(i=0;i<100;i++)fprintf(fp,"%s%s%4d%5d%101d\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);fclose(fp);}标准答案:voidSortDat(){inti,j;PROxy;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;}elseif(strcmp(sell[i].dm,sell[j].dm)==0)/*若产品代码相同*/if(sell[i].je<sell[j].je)/*则按金额从大到小进行排列*/{xy=sell[i];sell[i]=sell[j];sell[j]=xy;}}}知识点解析:此题是按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,相应语句为:if((strcmp(sell[i].dm,sell[j].dm)<0)‖(strcmp(sell[i].dm,sell[j].dm)==0)&&(sell[i].je<sell[j].je))国家三级(数据库技术)机试模拟试卷第2套一、程序设计题(本题共1题,每题1.0分,共1分。)1、在文件IN.dat中有200组数据,每组有3个数,每个数均是三位数。函数Rdata()读取这200组数据存放到结构数组aa中,请编写函数greatSort(),其功能是:要求在200组数据中找出条件为每组中的第1个数大于第2个数加第3个数的和,其中满足条件的组数作为函数greatSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第1个数加第3个数之和的大小进行升序排列(第1个数加第3个数的和均不相等),排序后的结果仍重新存入结构数组bb中。最后调用函数Wdata(),把结果bb输出到OUT.dat文件中。注意:部分源程序已经给出。请勿改动主函数main()、读数据函数Rdata()和输出数据函数Wdata()的内容。#include<stdio.h>#include<string.h>#include<conio.h>typedefstruct{intx1,x2,x3;}data;dataaa[200],bb[200];intgreatSort(){}voidRdata(){FILE*in;inti;in=fopen("IN.dat","r");for(i=0;i<200;i++)fscanf(in,"%d%d%d",&aa[i].x1,&aa[i].x2,&aa[i].x3);fclose(in);}voidWdata(intcount){FILE*out;inti;out=fopen("OUT.dat","w");for(i=0;i<count;i++){printf("%d,%d,%d第一个数+第三个数=%d\n",bb[i].x1,bb[i].x2,bb[i].x3,bb[i].x1+bb[i].x3);fprintf(out,"%d%d%d\n",bb[i].x1,bb[i].x2,bb[i].x3);}fclose(out);}voidmain(){intcount;Rdata();count=greatSort();/*返回满足条件的个数*/Wdata(count);}标准答案:intgreatSort(){inti,j,count=0;dataval;for(i=0;i<200;i++)if(aa[i].x1>aa[i].x2+aa[i].x3){bb[count]=aa[i];count++;}for(i=0;i<count-1;i++)for(j=i+1;j<count;j++)if(bb[i].x1+bb[i].x3>bb[j].x1+bb[j].x3){va1=bb[i];bb[i]=bb[j];bb[j]=va1;}returncount;}[解题思路]在for循环语句中,自变量i从0递增到200,判断每组中的第1个数大于第2个数加第3个数之和即表达式aa[i].x1>aa[i].x2+aa[i].x3是否成立,如果表达式成立,即把aa[i]赋给数组变量bb,同时计数变量count自加。最后用两重循环对数组bb中的数据按照每组数据的第2个数加第3个数之和的大小进行升序排列。知识点解析:暂无解析国家三级(数据库技术)机试模拟试卷第3套一、程序设计题(本题共1题,每题1.0分,共1分。)1、请编制程序,要求:将文件IN91.DAT中的200个整数读入数组xx中,求出数组xx中奇数的个数cnt1和偶数的个数cnt2,以及数组xx下标为偶数的元素值的算术平均值pj(保留2位小数),结果cnt1,cnt2,由输出到out91.dat中。部分程序、读函数read_dat(intxx[200])及输出格式已给出。试题程序:#include<conio.h>#include<stdio.h>#defineN200voidrealdat(intxx[N]){inti:j;FILE*fp;fp:fopen("IN91.DAT","r");for(i=0;i<20;i++){for(j=0;j<10;j++){fscanf(fp,"%d,",&xx[i*10+j]);printf("%d",xx[i*10+j]);}printf("\n");}fclose(fp);}voidmain({intcnt1,cnt2,xx[N];′floatpj;FILE*fw;inti,k=0;longj;clrscr();fw=fopen("out91.dat","w");read_dat(xx);printf("\n\ncntl=%d,cnt2=%d,pj=%6.2f\n",cnt1,cnt2,pj);fprintf(fw,"%d\n%d\n%6.2f\n",cntl,cnt2,pj);fclose(fw);}标准答案:voidmain(){intcnt1,cnt2,xx[N];floatpj;FILE*fw;inti,k=0;longj;clrscr();fw=fopen("out91.dat","w");read_dat(xx);for(i=0,j=0,cnt1=0,cnt2=0;i<N;i++){if(xx[i]%2)/*求出数组xx中奇数的个数cnt1*/cnt1++;elsecnt2++;/*求出数组xx中偶数的个数cnt2*/if(i%2==0){j+=xx[i];/*求数组xx下标为偶数的元素值的总和*/k++;}}pj=(float)(j*100/k)/100;/*求数组xx下标为偶数的元素值的算术平均值pj*/printf("\n\ncnt1=%d,cnt2=%d,pj=%6.2f\n",cnt1,cnt2,pj);fprintf(fw,"%d\n%d\n%6.2fkn",cnt1,cnt2,pj);fclose(fw);知识点解析:本题考查的知识点如下:(1)运算符“%”的使用。(2)强制类型转换和小数位数的保留。一个数除以2取余所得的数为1,则它是奇数,否则是偶数,取余使用运算符“%”。在本题中,要求算术平均值保留两位小数。使用的方法是:将和乘以100除以个数强制类型转换后再除以100。为了保证和有效,我们定义一个长整型变量来记录和。因为个数也为整型,运算符“/”在这里的含义是整除,而我们要保留小数,所以要使用强制类型转换将和乘以100的结果转换为浮点类型,这样就可以实现保留两位小数。使用循环对所有数据进行访问。国家三级(数据库技术)机试模拟试卷第4套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知数据文件IN78.DAT中存有200个4位数,并己调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:如果一个4位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字上的值,并且此4位数是奇数,则统计出满足此条件的数的个数cnt并把这些4位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT78.DAT文件中。注意:部分源程序已给出。程序中已定义数组:a[200],b[200],已定义变量:cnt。请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。试题程序:#include<stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){voidreadDat(){inti;FILE*fp;fp=fopen("IN78.DAT","r");for(i=0;i<MAX;i++)fscanf(fp,"%d",&a[i]);fclose(fp);}main(){inti;readDat();jsVal();printf("满足条件的数=%d\n",cnt);for(i=0;i<cnt;i++)printf("%d",b[i]);printf("\n");writeDat();}writeDat(){FILE*fp;inti;fp=fopen("OUT78.DAT","w");fprintf(fp,"%d\n",cnt);for(i=0;i<cnt;i++)fprintf(fp,"%d\n",b[i]);fclose(fp);}标准答案:voidjsVal(){inti,thou,hun,ten,data,j;for(i=0;i<MAX;i++){thou=a[i]/1000;/*求四位数的千位数字*/hun=a[i]%1000/100;/*求四位数的百位数字*/ten=a[i]%100/10;/*求四位数的十位数字*/data=a[i]%10;/*求四位数的个位数字*/if((thou>=hun)&&(hun>=ten)&&(ten>=data)&&a[i]%2!=0){/*如果千位数大于等于百位数,百位数大于等于十位数,十位数大于等于个位数,并且此数是奇数*/b[cnt]=a[i];/*则将满足条件的数存入数组b中*/cnt++;/*统计满足条件的数的个数*/}}for(i=0;i<cnt-1;i++)/*将数组b中的数按从小到大的顺序排列*/for(j=i+1;j<cnt;j++)if(b[i]>b[j]){data=b[i];b[i]=b[j];b[j]=data;}}知识点解析:本题考查的知识点如下:(1)将一个4位整数各位上的数转变成单独的数。(2)判断结构中多个条件的布尔运算。(3)数据的排序。在本题中,首先要将一个4位数的千位、百位、十位、个位拆成独立的数字。这里借助特殊运算符号“%”(取余)和“/”(整除)。将一个4位数整除1000则可得到其千位上的数字,除以1000取余再整除100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。若一个数除以2取余为1,则这个数是奇数。题目中的所有条件必须同时满足,所以各条件之间用“与”运算。先将满足条件的数存入数组b中,再对数组中的数据进行排序。最后的排序采用“选择排序法”。国家三级(数据库技术)机试模拟试卷第5套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知数据文件IN23.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中。请编制函数jsVal(),其功能是:依次从数组a中取出一个4位数,如果4位数连续大于该4位数以前的5个数且该数是奇数,该数必须能被7整除,则统计出满足此条件的数的个数cnt,并把这些4位数按从大到小的顺序存入数组b中,最后调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT23.DAT文件中。注意:部分源程序已给出。程序中已定义数组:a[200],b[200],已定义变量:cnt。请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。试题程序:#include〈stdio.h>#defineMAX200inta[MAX],b[MAX],cnt=0;voidjsVal(){}voidreadDat(){inti;FILE*fp;fP=fopen("IN23.DAT","r");for(i=0;i〈MAX;i++)fscanf(fp,"%d",&a[i]);fclose(fp);}main(){inti;readDat();jsVal();printf("满足条件的数=%d\n",cnt);for(i=0;i〈cnt;i++)printf("%d",b[i]);printf("\n");writeDat();}writeDat(){FILE*fp;inti;fP=fopen("OUT23.DAT","w");fprintf(fp,"%d\n",cnt);for(i=0;i〈cnt;i++)fprintf(fp,"%d\n",b[i]);fclose(fp);}标准答案:voidjsVal(){inti,j,flag=0;for(i=5;i〈MAX-5;i++)/*如果4位数连续大于该数以前的5个数,则置flag为1,否则取下一个数*/{for(j=i-5;j〈i;j++){if(a[i]>a[j])flag=1;else{flag=0;break;}}if(flag==1&&a[i]%2==1&&a[i]%7==0)/*如果flag为1且该数是奇数,该数能被7整除,则将该数存入数组b中,并统计满足条件的数的个数*/{b[cnt]=a[i];cnt++;}}for(i=0;i〈cnt-1;i++)/*将数组b中的数按从大到小的顺序排列*/for(j=i+1;j〈cnt;j++)if(b[i]〈b[j]){flag=b[i];b[i]=b[j];b[j]=flag;}}知识点解析:根据题意可知,要编制函数的功能有两部分:一是找出满足条件的4位数,二是对找出的数进行从大到小排序。首先利用一个for循环来依次从数组中取得4位数,接着拿当前得到的4位数与该数前面的连续的5个数依次进行比较。如果该数比它前面的5个数都大,则给标志变量flag赋值1,接着对flag进行判断,如果不为1,则该数肯定不符合条件,直接去取下一个数。若flag值为1,再来判断该数是否是奇数,如果恰好该数又能被7整除,则把该数添加到数组b中。这样就可以依次取出符合条件的数。然后利用选择法对数组b中的元素进行从大到小的排序。国家三级(数据库技术)机试模拟试卷第6套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知数据文件in81.dat中存有300个4位数,并已调用函数readDat()把这些数存入数组a中,请编制一函数isValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再求出所有满足此条件的4位数的平均值pjz1,以及所有不满足此条件的4位数的平均值pjz2,最后调用函数writeDat()把结果cnt,pjz1,pjz2输出到out81.dar文件。例如:7153,7+1=5+3,则该数满足条件,计算平均值pjz1,且个数cnt=cnt+1。8129,8+1≠2+9,则该数不满足条件计算平均值pjz2。注意:部分源程序已给出。程序中已定义数组:a[300],b[300],已定义变量:cnt,pjz1,pjz2。请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。试题程序:#include<stdio.h>inta[300],cnt=0;doublepjz1=0.0,pjz2=0.0;voidjsValue(){}main(){inti;readDat();jsValue();writeDat();printf("cnt=%d\n满足条件的平均值pjz1=%7.21f\n不满足条件的平均值pjz2=%7.21f\n",cnt,pjz1,pjz2);}readDat(){FILE*fp;inti;fp=fopen("in81.dat","r");for(i=0;i<300;i++)fscanf(fp,"%d,",&a[i]);fclose(fp);}writeDat(){FILE*fp;inti;fp=fopen("outSl.dat","w");fprintf(fp,"%d\n%7.21f\n%7.21f\n",cnt,pjz1,pjz2);fclose(fp);}标准答案: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++;/*统计满足条件的数的个数*/piz1+=a[i];/*将满足条件的数求和*/}else{n++;/*否则统计不满足条件的数的个数*/pjz2+;a[i];/*将不满足条件的数求和*/}}pjz1/=cnt;/*求满足条件的数的平均值*/pjz2/=n;/*求不满足条件的数的平均值*/}知识点解析:本题考查的知识点如下:(1)特殊运算符“%”及“/”的使用。(2)循环结构及选择结构的使用。在本题中,首先要将一个4位数的千位、百位、十位、个位拆成独立的数字。这里借助特殊运算符号“%”——取余和“/”——整除,拆分方法略。然后判断“千位数+百位数=十位数+个位数”。依次求得符合条件的数的个数及其平均值。国家三级(数据库技术)机试模拟试卷第7套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位)、产品名称mc(字符型10位)、单价dj(整型)、数量s1(整型)、金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WritcDat()把结果输出到文件OUT8.DAT中。部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。#include<stdio.h>#include<mem.h>#include<string.h>#include<conio.h>$include<stdlib.h>$defineMAX100typedefstruct{chardm[5];/*产品代码*/charmc[ll];/*产品名称*/ihtdj;/*单价*/intsl;/*数量*/longje;/*金额*/}PRO;PROsell[MAX];voidReadDat();voidWriteDat();voidSortDat(){voidmain(){memset(sell,0,sizeof(sell));ReadDat();SortDat();WriteDat();}voidReadDat(){FILE*fp;charstr[80],ch[ll];inti;fp=fopen("IN.DAT","r");for(i=0;i<100;i++){fgets(str,80,fp);memcpy(setl[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+lS,5);ch[5]=0;sell[i].sl=atoi(ch);sell[i].je=(long)sell[i].dj*sell[i].s1;}fclose(fp);}voidWriteDat(void){FILE*fp;inti;fp=fopen("OUT8.DAT","w");for(i=0;i<100;i++){fprintf(fp,"%s%s%4d%5d%10Ld\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);}fclose(fp);}标准答案:voidSortDat(){inti,j;PROswap;for(i=0;i<MAX-1;i++)for(j=i+1;j<MAX;j++)/*根据题目要求进行结构体比较*/if((strcmp(sell[i].dm,sell[j],dm)<0||strcmp(sell[i].dm,sell[j].dm)==0)&&sell[i].je<sell[j].je){/*结构体赋值,sell[i]中始终保存第i轮扫描的当前最小记录*/swap=sell[i];sell[i]=sell[j];sell[j]=swap;}}知识点解析:类型:结构体排序。关键点:结构体比较和排序。与整数排序类似,只是进行结构体计算、比较和赋值。国家三级(数据库技术)机试模拟试卷第8套一、程序设计题(本题共1题,每题1.0分,共1分。)1、在文件in75.dat中有200组数据,每组有3个数,每个数均为3位数。函数readDat()是读取这200组数存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之和,其中满足条件的个数作为函数jsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数按照每组数据的第一个数加第三个数之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组比中。最后调用函数writeDat()把结果bb输出到文件out75.dat。注意:部分源程序已给出。请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。试题程序:#include<stdio.h>#include<string.h>#include<conio.h>typedefstruct{intx1,x2,x3;}Data;Dataaa[200],bb[200];intjsSort(){}voidmain(){intcount;readDat();count=jsSort();writeDat(count);}readDat(){FILE*in;inti;in=fopen("in75.dat","r");for(i=0;i<200;i++)fscanf(in,"%d%d%d",&aa[i].x1,&aa[i].x2,&aa[i].x3);fclose(in);}writeDat(intcount){FILE*out;inti;clrscr();out=fopen("out75.dat","w");for(i=0;i<count;i++){printf("%d,%d,%d第一个数+第三个数=%d\n",bb[i].x1,bb[i].x2,bb[i].x3,bb[i].x1+bb[i].x3);fprintf(out,,%d,%d,%d\n",bb[i].x1,bb[i].x2,bb[i].x3);}fclose(out);}标准答案:intjsSort(){inti,j,count=0;Dataval;for(i=0;i<200;i++)if(aa[i].x1>aa[i].x2+aa[i].x3)/*如果每组数据中的第一个数大于第二三个数之和*/{bb[count].x1=aa[i].x1;/*把满足条件的数据存入结构数组bb中*/bb[count].x2=aa[i].x2;bb[count].x3=aa[i].x3;count++;/*统计满足条件的数据的组数*/}for(i=0;i<count-1;i++)/*对bb中的数按照每组数据的第一个数加第三个数之和的大小进行升序排列*/for(j=i+1;j<count;j++)if(bb[i].x1+bb[i].x3>bb[j].x1+bb[j].x3){val=bb[i];bb[i]=bb[j];bb[j]=val;}returncount;/*满足条件的数据的组数*/}知识点解析:本题考查的知识点如下:(1)结构体及结构数组。(2)数据的排序。(3)函数的返回值。本题中,定义了结构类型和结构数组,这就要涉及到结构体和结构数组的访问。相同类型的结构体变量之间可以直接赋值,也可以依次对结构体中的每个变量进行赋值或访问。排序使用“选择排序法”。函数的值通过return语句返回,格式为;return表达式或return(表达式)或return,当函数没有返回值时用第3种格式。在本题中,要用第1种或第2种格式。国家三级(数据库技术)机试模拟试卷第9套一、程序设计题(本题共1题,每题1.0分,共1分。)1、已知数据文件IN77.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:如果一个4位数的千位数字上的值加十位数字上的值恰好等于百位数字上的值加上个位数字上的值,并且此4位数是偶数,则统计出满足此条件的数的个数cnt并

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论