最新三级上级南开100题(精华)

合集下载

最新三级上级南开100题精华)

最新三级上级南开100题精华)

全国计算机等级考试 三级C 语言上机100题**********************************☆题目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()的内容。

int isP(int m) { int i; for(i=2;i<m;i++) if(m % i==0)return 0; return 1; } void num(int m,int k,int xx[]) { int s=0; for(m=m+1;k>0;m++) if(isP(m)) { xx[s++]=m; k--;} } ******************************** ☆题目2 已知数据文件IN.DAT 中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt ,并把这些四位数按从大到小的顺序存入数组b 中。

最后main( )函数调用写函数writeDat()把结果cnt 以及数组b 中符合条件的四位数输出到OUT.DAT 文件中。

注意:部分源程序存在文件prog1.c 中。

程序中已定义数组:a[200],b[200],已定义变量:cnt请勿改动数据文件IN.DAT 中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

nt = 0 ; void jsVal() { int i,j,qw,bw,sw,gw; for(i=0;i<MAX;i++) { qw=a[i]/1000; bw=a[i]/100%10; sw=a[i]%100/10; gw=a[i]%10; if(qw&&qw%2==0&&bw%2==0&&s w%2==0&&gw%2==0) b[cnt++]=a[i]; } for(i=0;i<cnt-1;i++) for(j=i+1;j<cnt;j++)if(b[i]<b[j]) { qw=b[i]; b[i]=b[j]; b[j]=qw;} } *********************************★题目3 函数ReadDat( )实现从文件IN.DAT 中读取一篇英文文章存入到字符串数组xx 中;请编制函数StrOR( ),其函数的功能是:以行为单位依次把字符串中所有小写字母o 左边的字符串内容移到该串的右边存放,然后把小写字母o 删除,余下的字符串内容移到已处理字符串的左边存放,之后把已处理的字符串仍按行重新存入字符串数组xx 中。

计算机三级PC技术上机南开100题(全)

计算机三级PC技术上机南开100题(全)

计算机三级PC南开100题第一题:一、请编制程序,其功能是:将内存中由SOURCE指示的40个字节有符号数组成的数组分成正数和负数两个数组,并求这两个数组的数据个数,结果存放在RESULT 指示的内存区域,存放形式为正数个数在前,其后跟正数数组元素,然后是负数个数及负数数组元素。

例如:内存中有1EH,91H,74H,91H,42H,30H,81H,F3H,18H,25H结果为06H,1EH,74H,42H,30H,18H,25H,04H,91H,91H,81H,F3H 试题程序:EXTRN LOAD:FAR,SAVE:FARN EQU 40STAC SEGMENT STACKDB 128 DUP(?)STAC ENDSDATA SEGMENTSOURCE DB N DUP(0)RESULT DB N+2 DUP(0)NAME0 DB 'INPUT1.DAT',0NAME1 DB 'OUTPUT1.DAT',0NDATA DB N DUP(0)PDATA DB N DUP(0)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACSTART PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AX ;置附加段寄存器LEA DX,SOURCE ;数据区起始地址LEA SI,NAME0 ;原始数据文件名MOV CX,N ;字节数CALL LOAD ;从'INPUT1.DAT'中读取数据;****BEGIN****LEA SI,SOURCEMOV DI,OFFSET PDATA ;PDATA为正数数组存放缓冲区首址MOV BX,OFFSET NDATA ;NDATA为负数数组存放缓冲区首址XOR DX,DXMOV CX,N CLDMAIN1: LODSBTEST AL,_______________JZ MAIN2INC DH ;-MOV [BX],ALINC BX_______________MAIN2: INC DLMOV [DI],AL ;+INC DIMAIN3: _______ MAIN1LEA SI,PDATALEA DI,RESULTMOV [DI],DLINC DIXOR CX,CXMOV CL,DLMAIN4: MOV AL,_______________MOV [DI],ALINC DIINC SILOOP _______________MOV [DI],DHINC DIXOR CX,CXMOV CL,DHMOV BX,OFFSET NDATAMAIN5: MOV AL,[BX]MOV [DI],ALINC DI_______________LOOP MAIN5;****END****LEA DX,RESULT ;结果数据区首址LEA SI,NAME1 ;结果文件名MOV CX,N+2 ;字节数CALL SAVE ;保存结果到文件RETSTART ENDPCODE ENDSEND START第二题:一、请编制程序,其功能是:内存中连续存放着10个无符号8位格雷码表示的数,现将此十个数转换成十个8位二进制数,结果存入内存,其转换方法为二进制数的最高位D7与格雷码的最高位G7相同,二进制数的其余七位D K (k=6,…,0)分别为格雷码的位G K(k=6,…,0)与二进制数的位D K+1(k=6,…,0)异或的结果。

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

全国计算机等级考试三级C语言上机100题几点说明:**********************************☆题目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()的内容。

#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:"); scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}*********************************☆题目2已知数据文件IN.DA T中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

计算机三级PC南开100题

计算机三级PC南开100题

功能为内存中10个无符号字节数对其执行(X*7-5)/8操作(x为内存中的数据且x不等于零),结果存入指定内存中1)0FFH 2)SHL 3)SUB AX,DX 4)SHR 5)JNZ AGAIN或者六个空:1)0FFH 2)SHL 3)SUB AX,DX SHR BX JNZ AGAIN第一题:一、请编制程序,其功能是:将内存中由SOURCE指示的40个字节有符号数组成的数组分成正数和负数两个数组,并求这两个数组的数据个数,结果存放在RESULT指示的内存区域,存放形式为正数个数在前,其后跟正数数组元素,然后是负数个数及负数数组元素。

例如:内存中有1EH,91H,74H,91H,42H,30H,81H,F3H,18H,25H结果为06H,1EH,74H,42H,30H,18H,25H,04H,91H,91H,81H,F3H部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。

运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT 中。

填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。

调试中若发现整个程序中存在错误之处, 请加以修改。

(1)MOV (2)00H(或者80H)(3)JMP MAIN3(4)LOOP (5)[SI] (6)MAIN4(7)INC BXSOURCE开始的区域里存放的20个字节的压缩bcd码转换为ASCII码,每个BCD码转换为两个ASCII码最高位奇校验位ADD AL,0FH PUSH CX SHR AH,CL JNP JNP若内存中有:73H,45H 结果为:37H。

计算机三级上机_适用于三级网络技术、数据库等[南开100题]

计算机三级上机_适用于三级网络技术、数据库等[南开100题]

全国计算机等级考试三级C语言上机100题几点说明:**********************************☆题目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()的内容。

#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:");scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}*********************************☆题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

全国计算机等级考试三级C语言上机100题几点说明:**********************************☆题目1请编写一个函数jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。

最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件中。

部分源程序存在文件中。

例如:若输入17 5 则应输出:19,23,29,31,37。

请勿改动主函数main()和写函数writeDat()的内容。

#include <>#include <>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:");scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("","r");wf=fopen("","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}入数组b中。

全国计算机等级考试三级南开C语言上机100题答案

全国计算机等级考试三级南开C语言上机100题答案

****************************** ********三级c语言机试答案(南开100题打印版)****************************** ********第1题void num(int m,int k,int xx[]){int data=m+1;int half,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++) if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;}}***************************第2题void jsVal(){int bb[4];int I,j,k,flag;for (I=0;I<200;I++){bb[0]=a[I]/1000;bb[1]=a[I]%1000/100;bb[2]=a[I]%100/10;bb[3]=a[I]%10;for (j=0;j<4;j++){if (bb[j]%2==0)flag=1;else{flag=0;break;}}if (flag==1){ b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if (b[I]<b[j]){k=b[I];b[I]=b[j];b[j]=k;}}**************************第3题void StrOR(void){int I,j,k,index,strl;char ch;for(I=0;I<maxline;I++){strl=strlen(xx[I]);index=strl;for(j=0;j<strl;j++)if(xx[I][j]=='o'){for(k=j;k<strl-1;k++)xx[I][k]=xx[I][k+1]; xx[I][strl-1]= ' ';index=j;}for(j=strl-1;j>=index;j--){ch=xx[I][strl-1];for(k=strl-1;k>0;k--)xx[I][k]=xx[I][k-1];xx[I][0]=ch;}}}*************************第4题void StrOL(void){int I,j,k,strl,l;char c;for(I=0;I<maxline;I++)for(j=0;j<strlen(xx[I]);j++){c=xx[I][j];if((c>='A'&&c<='Z')||(c>='a'&&c<='z')||c==' ');else xx[I][j]=' ';}for(l=0;l<maxline;l++){char ch[80]={0};char pp[80]={0};strl=strlen(xx[l]);I=strl-1;k=1;while(1){while(((xx[l][I]>='a'&&xx[l][I]<='z')||(xx[l][I]>='A'&&xx[l][I]<='z'))&&I>=0){for(j=k;j>=0;j--)pp[j+1]=pp[j];pp[0]=xx[l][I];k++;I--;}strcat(ch,pp);strcpy(pp, "");k=1;if(I==-1)break;while((xx[l][I]<'A'||xx[l][I]>'z')&&I>=0){for(j=k;j>=0;j--)pp[j+1]=pp[j];pp[0]=xx[l][I];k++;I--;}strcat(ch,pp);strcpy(pp,"");k=0;if(I==-1)break;}strcpy(xx[l],ch);}}***************************第5题void jsSort(){int I,j,data;for(I=0;I<199;I++)for(j=I+1;j<200;j++){if (aa[I]%1000>aa[j]%1000){data=aa[I];aa[I]=aa[j];aa[j]=data;}else if(aa[I]%1000==aa[j]%1000)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];}*****************************************第6题void jsSort(){int I,j,data;for(I=0;I<199;I++)for(j=I+1;j<200;j++){if (aa[I]%1000<aa[j]%1000){data=aa[I];aa[I]=aa[j];aa[j]=data;}else if(aa[I]%1000==aa[j]%1000)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];}*****************************************第7题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;}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;}}*****************************************第8题void encryptChar( ){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while(*pf!=0){if(*pf*11%256>130||*pf*11%256<= 32);else*pf=*pf*11%256;pf++;}}}****************************** ***********第9题void SortCharD(void){int I,j,k,strl;char ch;for(I=0;I<maxline;I++){strl=strlen(xx[I]);for(j=0;j<strl-1;j++)for(k=j+1;k<strl;k++)if(xx[I][j]<xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}****************************** ***********第10题void ConvertCharA(void){int I,j,str;for(I=0;I<maxline;I++){str =strlen(xx[I]);for(j=0;j<str;j++)if(xx[I][j]=='z')xx[I][j]='a';else if(xx[I][j]>='a'&&xx[I][j]<='y') xx[I][j]+=1;}}****************************** ***********第11题void chg(char*s){while(*s)if(*s=='z'||*s=='Z'){*s-=25;s++;}else if(*s>='a'&&*s<='y'){*s+=1;s++;}else if(*s>='A'&&*s<='Y'){*s+=1;s++;}else s++;} *****************************************第12题void SortDat( ){int I,j;PRO xy;for(I=0;I<99;I++)for(j=I+1;j<100;j++)if(strcmp(sell[I].mc,sell[j].mc)>0){xy=sell[I];sell [I]=sell[j];sell[j]=xy;}elseif(strcmp(sell[I].mc,sell[j].mc)==0)if(sell[I].je>sell[j].je){xy=sell[I];sell[I]=sell[j];sell[j]=xy;}}*****************************************第13题void SortDat( ){int I,j;PRO xy;for(I=0;I<99;I++)for(j=I+1;j<100;j++)if(strcmp(sell[I].mc,sell[j].mc)>0){xy=sell[I];sell [I]=sell[j];sell[j]=xy;}elseif(strcmp(sell[I].mc,sell[j].mc)==0)if(sell[I].je<sell[j].je){xy=sell[I];sell[I]=sell[j];sell[j]=xy;}}*****************************************第14题void jsVal(){int I,j,flag=0;int k;for(I=0;I<MAX-5;I++){for(j=I+1;j<=I+5;j++){if (a[I]>a[j])flag=1;else {flag=0;break;}if (a[I]%2==0)flag=0;}if (flag==1){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if (b[I]>b[j]){k=b[I];b[I]=b[j];b[j]=k;}}*****************************************第15题void jsVal(){int I,j;int a1,a2,a3,a4,k;for (I=0;I<MAX;I++){a1=a[I]/1000;a2=a[I]%1000/100;a3=a[I]%100/10;a4=a[I]%10;if((a1<=a2)&&(a2<=a3)&&(a3<=a4)&&(a[I]%2==0)){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if (b[I]>b[j]){k=b[I];b[I]=b[j];b[j]=k;}}*****************************************第16题void StrCharJR(void){int I,j,strl;for(I=0;I<maxline;I++){strl=strlen(xx[I]);for(j=0;j<strl;j++)xx[I][j]+=xx[I][j]>>4;}}*****************************************第17题void ChA(void){int I,j,k,str;char ch;for(I=0;I<maxline;I++){str=strlen(xx[I]);ch=xx[I][0];for(j=0;j<str-1;j++)xx[I][j]+=xx[I][j+1];xx[I][str-1]+=ch;for(j=0,k=str-1;j<str/2;j++,k--){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}****************************** ***********第18题void encryptChar( ){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while(*pf!=0){if(*pf%2==0||*pf*11%256<=32) ;else*pf=*pf*11%256;pf++;}}}****************************** ***********第19题int findStr(char *str,char *substr){ int n;char *p , *r;n=0;while ( *str ){ p=str;r=substr;while(*r)if(*r==*p) { r++; p++; }else break;if(*r=='\0')n++;str++;}return n;}****************************** ***********第20题int jsValue(int t){ int f1=0,f2=1,fn;fn=f1+f2;while(fn<=t){f1=f2;f2=fn;fn=f1+f2;}return fn;}****************************** *********第21题float countValue(){float x0,x1=0.0;while(1){x0=x1;x1=cos(x0);if(fabs(x0-x1)<1e-6) break; }return x1;}*****************************************第22题double countValue(int n){double xy=0.0;int I;for(I=1;I<n;I++)if(I%3==0&&I%7==0) xy+=I;xy=sqrt((double)xy);return xy;}*****************************************第23题void CalValue(){int I;double x,sum=0;for (I=0;I<MAXNUM;I++){sumint=sumint+(int)xx[I];x=xx[I]-(int)xx[I];sumdec=sumdec+x;sum=sum+xx[I];}aver=sum/MAXNUM;}*****************************************第24题int jsValue(int bb[]){int I,j,k=0;int hun,ten,data;for(I=100;I<=999;I++){j=10;while(j*j<=I){if (I==j*j){hun=I/100;data=I-hun*100;ten=data/10;data=data-ten*10;if(hun==ten||hun==data||ten==data){bb[k]=I;k++;}}j++;}}return k;}*****************************************第25题int jsValue(long n){int I,strl,half;char xy[20];ltoa(n,xy,10);strl=strlen(xy);half=strl/2;for(I=0;I<half;I++)if(xy[I]!=xy[--strl]) break;if(I>=half) return 1;else return 0;}*****************************************第26题void CalValue(void){int I,data;for(I=0;I<MAXNUM;I++){if(!xx[I]) break;if(xx[I]>0) totNum++;data=xx[I]>>1;if(data%2==0){totCnt++;totPjz+=xx[I];}}totPjz/=totCnt;}*****************************************第27题void jsValue(){int I,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;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第28题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*thou+ten;cd=10*data+hun;?LVAL ?•€ f •€ f •• •• •if ((ab-cd)>=0&&(ab-cd)<=10&&ab%2==1&&cd%2==1&&ab!=0&&cd!=0) {b[cnt]=a[I];cnt++;} } for(I=0;I<cnt-1;I++) for(j=I+1;j<cnt;j++) if(b[I]<b[j]) {data=b[I]; b[I]=b[j]; b[j]=data;} } ***************************************** 第29题 void jsVal() { int I,thou,hun,ten,data,j; int ab,cd; for(I=0;I<200;I++) {thou=a[I]/1000; hun=a[I]%1000/100; ten=a[I]%100/10; data=a[I]%10; ab=10*thou+ten; cd=10*data+hun; if((ab-cd)>=10&&(ab-cd)<=20&&ab%2==0&&cd%2==0&&ab!=0&&cd!=0) {b[cnt]=a[I];cnt++;} } for(I=0;I<cnt-1;I++) for(j=I+1;j<cnt;j++) if(b[I]<b[j]) {data=b[I]; b[I]=b[j]; b[j]=data;} } ***************************************** 第30题 void jsVal() {int I,j,flag=0; for(I=0;I<MAX-5;I++) {for(j=I+1;j<=I+5;j++) {if(a[I]<a[j]) flag=1; else flag=0; if(a[I]%2!=0) flag=0; if (flag==0) break;} if(flag==1) {b[cnt]=a[I];cnt++;} } for(I=0;I<cnt-1;I++) for(j=I+1;j<cnt;j++) if(b[I]>b[j]) {flag=b[I]; b[I]=b[j]; b[j]=flag;} } **************************************** 第31题 void SortDat( ) {int I,j; PRO xy; for(I=0;I<99;I++) for(j=I+1;j<100;j++) if(sell[I].je<sell[j].je) {xy=sell[I]; sell [I]=sell[j]; sell[j]=xy;} else if(sell[I].je==sell[j].je) if(strcmp(sell[I].dm,sell[j].dm)<0) {xy=sell[I]; sell[I]=sell[j]; sell[j]=xy;} } ***************************************** 第32题 void SortDat( ) {int I,j; PRO xy; for(I=0;I<MAX-1;I++)for(j=I+1;j<MAX;j++) if(strcmp(sell[I].mc,sell[j].mc)<0) {xy=sell[I]; sell [I]=sell[j]; sell[j]=xy;} else if(strcmp(sell[I].mc,sell[j].mc)==0) if(sell[I].je>sell[j].je) {xy=sell[I]; sell[I]=sell[j]; sell[j]=xy;} } ***************************************** 第33题 int ReadDat(void) {FILE *fp; int I,j; if((fp=fopen("IN.DAT","r"))==NULL) return 1; for(I=0;I<100;I++) {for(j=0;j<10;j++) fscanf(fp, "%d,", &xx[I*10+j]); fscanf(fp, "\n"); if(feof(fp)) break;} fclose(fp); return 0;} void Compute(void) {int I, yy[MAX]; for(I=0;I<1000;I++)if(xx[I]%2){odd++;ave1+=xx[I]; } else{even++;ave2+=xx[I]; yy[even-1]=xx[I];}ave1/=odd; ave2/=even; for(I=0;I<even;I++) totfc+=(yy[I]-ave2)*(yy[I]-ave2)/even; } ***************************************** 第34题 void countValue() {int I,j,half,hun,ten,data; for(I=101;I<1000;I++) {hun=I/100; ten=I%100/10; data=I%10; if(hun==(ten+data)%10) {half=I/2; for(j=2;j<half;j++) if(I%j==0) break; if(j>=half) {cnt++;sum+=I;} } } } ***************************************** 第35题 void jsValue() {int a1=1,a2=1,n=1,an; int sum0,sum; sum0=a1+a2; while(1) {an=a1+a2*2; sum=sum0+an; a1=a2; a2=an; n++; if (sum0<100&&sum>100) b[0]=n; if (sum0<1000&&sum>1000) b[1]=n; if (sum0<10000&&sum>10000) {b[2]=n; break;} sum0=sum; } } ***************************************** 第36题 void encryptChar( ) {int I; char *pf; for(I=0;I<maxline;I++) {pf=xx[I]; while(*pf!=0){if((*pf*11%256>='0'&&*pf*11%25 6<='9')||*pf*11%256<=32){pf++;continue;}*pf=*pf*11%256;pf++;}}}****************************** ***********第37题void encryptChar( ){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while(*pf!=0){ if((*pf>='A'&&*pf<='Z')||*pf*11%256 <=32){pf++;continue;}*pf=*pf*11%256;pf++;}}}****************************** ***********第38题void SortDat( ){int I,j;PRO xy;for(I=0;I<MAX-1;I++)for(j=I+1;j<MAX;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;}}****************************** ***********第39题void CountRs(void){int I,j=0,k=0;char *str;for(I=0;I<10;I++)yy[I]=0;for(I=0;I<100;I++){str=xx[I];j=0;while(*str)if(*str=='1'){j++;str++;}else str++; if(j!=0&&j!=10){str=xx[I];k=0;while(*str)if(*str++=='1') yy[k++]+=1;else k++;}}}*****************************************第40题void CalValue(){int I,thou,hun,ten,data;int ab,sum=0;for(I=0;I<MAXNUM;I++){if(xx[I]>0) totNum++;{thou=xx[I]/1000;hun=xx[I]%1000/100;ten=xx[I]%100/10;data=xx[I]%10;ab=thou+hun+ten+data;if (ab%2==0){totCnt++;sum=sum+xx[I];}}}totPjz=sum/totCnt;}****************************************第41题void countValue(){int I=100;while(1){if(3*I%2==0&&3*I/2>=1000&&3*I/2<=9999){cnt++;sum+=I+3*I/2;I++;}else I++;if (I>999||3*I/2>9999) break;}}*****************************************第42题void SortDat( ){int I,j;PRO xy;for(I=0;I<99;I++)for(j=I+1;j<100;j++)if(strcmp(sell[I].mc,sell[j].mc)<0){xy=sell[I];sell [I]=sell[j];sell[j]=xy;}elseif(strcmp(sell[I].mc,sell[j].mc)==0)if(sell[I].je<sell[j].je){xy=sell[I];sell[I]=sell[j];sell[j]=xy;}}*****************************************第43题void jsSort(){int I,j,k,strl;char ch;for(I=0;I<20;I++){strl=strlen(xx[I]);for(j=1;j<strl-2;j=j+2)for(k=j+2;k<strl;k=k+2)if (xx[I][j]>xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}*****************************************第44题void jsSort(){int I,j,k,strl,half;char ch;for(I=0;I<20;I++){strl=strlen(xx[I]);half=strl/2;for(j=0;j<half-1;j++)for(k=j+1;k<half;k++)if (xx[I][j]<xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}for(j=half-1,k=strl-1;j>=0;j--,k--){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}*****************************************第45题void jsVal(){int I,j,flag=0;for(I=5;I<MAX-5;I++){for(j=I-5;j<I;j++){if(a[I]>a[j])flag=1;else flag=0;if(a[I]%2!=0)flag=0;if (flag==0) break;}if(flag==1) {b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){flag=b[I];b[I]=b[j];b[j]=flag;}}****************************** ***********第46题void jsVal(){int I,j,flag=0;for(I=5;I<MAX-5;I++){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) {b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){flag=b[I];b[I]=b[j];b[j]=flag;}}**************************第47题void SortDat( ){int I,j;PRO xy;for(I=0;I<MAX-1;I++)for(j=I+1;j<MAX;j++)if(sell[I].je<sell[j].je){xy=sell[I];sell [I]=sell[j];sell[j]=xy;}else if(sell[I].je==sell[j].je)if(strcmp(sell[I].dm,sell[j].dm)>0){xy=sell[I];sell[I]=sell[j];sell[j]=xy;}}****************************** ******第48题void jsValue(){int I,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];cn t++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){data=b[I];b[I]=b[j];b[j]=data;} }*****************************************第49题void jsValue(){int I,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;}*****************************************第50题void jsSort(){int I,j,k,strl,half;char ch;for(I=0;I<20;I++){strl=strlen(xx[I]);half=strl/2;for(j=0;j<half-1;j++)for(k=j+1;k<half;k++)if (xx[I][j]>xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}for(j=half-1,k=strl-1;j>=0;j--,k--){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}****************************************第51题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*thou+ten;cd=10*data+hun;if(isprime(ab)&&isprime(cd)&&ab!=0&&cd!=0){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第52题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*thou+data;cd=10*hun+ten;if(ab%2==1&&cd%2==1&&(ab%5==0||cd%5==0)&&ab!=0&&cd!=0){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第53题void jsValue(){int I,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;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第54题void jsValue(){int I,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];cn t++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}****************************** ***********第55题void jsValue(){int j,I,value;for(I=0;I<300;I++)if(isP(a[I])) {b[cnt]=a[I];cnt++;}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){value=b[I];b[I]=b[j];b[j]=value;}}****************************** ***********第56题void encryptChar( ){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while(*pf=0){ if((*pf*11%256>='a'&&*pf*11%256< ='z')||*pf*11%256<=32){pf++;continue;}*pf=*pf*11%256;pf++;}}}****************************** ***********第57题void Josegh(void){int I,j,k,s1,w;s1=s;for(I=1;I<=n;I++) p[I-1]=I;for(I=n;I>=2;I--){s1=(s1+m-1)%I;if (s1==0) s1=I; w=p[s1-1];for(j=s1;j<=I-1;j++) p[j-1]=p[j];p[I-1]=w;}}*****************************************第58题void CountRs(void){int I,count,j;char *pf;for(I=0;I<10;I++)yy[I]=0;for(I=0;I<100;I++){pf=xx[I];count=0;while (*pf)if(*pf=='1'){count++;pf++;} elsepf++;if (count>5){pf=xx[I];j=0;while (*pf)if (*pf=='1') {yy[j]+=1;j++;pf++;}else if (*pf=='0') {pf++;j++;}}}}*****************************************第59题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*thou+ten;cd=10*data+hun;if(((ab-cd)<0&&ab%2==1&&ab%5!=0)&&cd%2!=1&&ab!=0&&cd!=0){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第60题int jsSort(){int I,cnt=0,j;Data ch;for(I=0;I<200;I++)if(aa[I].x2>aa[I].x1+aa[I].x3){bb[cnt]=aa[I];cnt++;}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(bb[I].x2+bb[I].x3<bb[j].x2+bb[j].x3){ ch=bb[I];bb[I]=bb[j];bb[j]=ch;}return cnt;}****************************************第61题void SortDat( ){int I,j;PRO xy;for(I=0;I<99;I++)for(j=I+1;j<100;j++)if(sell[I].je>sell[j].je){xy=sell[I];sell [I]=sell[j];sell[j]=xy;}else if(sell[I].je==sell[j].je)if(strcmp(sell[I].dm,sell[j].dm)<0){xy=sell[I];sell[I]=sell[j];sell[j]=xy;}}*****************************************第62题void encryptChar( ){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while(*pf!=0){if((*pf*13%256)/2*2==*pf||*pf*13%256<=32){pf++;continue;}*pf=*pf*13%256;pf++;}}}*****************************************第63题void chg(char *s){int I,strl;char ch;strl=strlen(s);ch=*s;for(I=0;I<strl-1;I++)*(s+I)=*(s+I+1);*(s+strl-1)=ch;}****************************** ***********第64题void countValue(){int I,count=0,xx[30];int j,k,m;cnt=0;sum=0;for(I=1;I<=90;I++)if(isPrime(I)) {xx[count]=I;count++;} for(I=0;I<count;I++)if(isPrime(xx[I]+4)&&isPrime(xx[I]+1 0)){cnt++;sum+=xx[I];}}****************************** ***********第65题void CalValue(void){int I,thou,hun,ten,data;for(I=0;I<MAXNUM;I++){if (!xx[I]) break;if (xx[I]>0) totNum++;thou=xx[I]/1000;hun=xx[I]%1000/100;ten=xx[I]%100/10;data=xx[I]%10;if ((thou+hun+ten+data)%2){totCnt++;totPjz+=xx[I];}}totPjz/=totCnt;}****************************** ***********第66题void countValue(){int I,j,half,yy[100];for(I=500;I<=800;I++){half=I/2;for(j=2;j<half;j++)if (I%j==0) break;if (j>=half) {yy[cnt]=I;cnt++;}}for (I=0,j=-1;I<cnt;I++){j=j*-1;sum+=j*yy[I];}}****************************** ***********第67题void countValue(){int I,thou,hun,ten,data;for(I=5000;I>=1000;I--){thou=I/1000;hun=I%1000/100;ten=I%100/10;data=I%10; if(thou+hun==ten+data&&thou+hun==(data-thou)*10){cnt++;sum+=I;}}}*****************************************第68题void jsVal(){int I,thouhun,ten,data,j;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;if(thou%2!=0&&hun%2!=0&&ten%2!=0&&data%2!=0){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第69题void jsVal(){int I,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-ten-data>=0)&&a[I]%2==1){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第70题void CalValue(void){int I,data;for(I=0;I<MAXNUM;I++){if(!xx[I]) break;if(xx[I]>0) totNum++;data=xx[I]>>1;if (data%2) {totCnt++;totPjz+=xx[I];}}totPjz/=totCnt;}*****************************************第71题void jsSort(){int I,j,k,strl,half;char ch;for(I=0;I<20;I++){strl=strlen(xx[I]);half=strl/2;for(j=0;j<half-1;j++)for(k=j+1;k<half;k++)if (xx[I][j]<xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}if (strl%2) half++;for(j=half;j<strl-1;j++)for(k=j+1;k<strl;k++)if (xx[I][j]>xx[I][k]){ch=xx[I][j];xx[I][j]=xx[I][k];xx[I][k]=ch;}}}*****************************************第72题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<MAX;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*data+thou;cd=10*hun+ten;if((ab%9==0||cd%9==0)&&ab%2!=1&&cd%2!=1&&ab!=0&&cd!=0){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第73题void ConvertCharD(){int I;char *pf;for(I=0;I<maxline;I++){pf=xx[I];while (*pf)if (*pf=='a'){*pf='z';pf++;}else if (*pf>='b'&&*pf<='z'){*pf-=1;pf++;}else pf++;}}****************************** ***********第74题void StrCharJL(void){int I,j,str;for(I=0;I<maxline;I++){str=strlen(xx[I]);for(j=0;j<str;j++)if (xx[I][j]<<4<=32||xx[I][j]<<4>100) ;else xx[I][j]+=xx[I][j]<<4;}}****************************** ***********第75题int jsSort(){int I,j,count=0;Data val;for(I=0;I<200;I++)if(aa[I].x1>aa[I].x2+aa[I].x3){bb[count].x1=aa[I].x1;bb[count].x2=aa[I].x2;bb[count].x3=aa[I].x3;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) {val=bb[I];bb[I]=bb[j];bb[j]=val;}return count;}****************************** ***********第76题void jsVal(){int I,thou,hun,ten,data,j;int ab,cd;for(I=0;I<200;I++){thou=a[I]/1000;hun=a[I]%1000/100;ten=a[I]%100/10;data=a[I]%10;ab=10*data+thou; cd10*hun+ten;if((ab%2!=1&&cd%2==1)||(ab%2==1&&cd%2!=1)&&(ab%17==0||cd%17==0)&&ab!=0&&cd!=0)){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]<b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第77题void jsVal(){int I,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+ten==hun+data)&&a[I]%2!=1){b[cnt]=a[I];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第78题void jsVal(){int I,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];cnt++;}}for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if(b[I]>b[j]){data=b[I];b[I]=b[j];b[j]=data;}}*****************************************第79题void countValue(int *a,int *n){int I;*n=0;for(I=1;I<=1000;I++)if(I%7==0&&I%11){*a=I;*n=*n+1;a++;}else if(I%7&&I%11==0){*a=I;*n=*n+1;a++;}}*****************************************第80题void jsValue(){int I,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;}*****************************************第81题void jsValue(){int I,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题void jsValue(){int I;for (I=0;I<300;I++)if (isP(a[I])) {pjz1+=a[I];cnt++;}else pjz2+=a[I];pjz1=pjz1/cnt;pjz2=pjz2/(300-cnt);。

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

全国计算机等级考试三级C语言上机100题几点说明:**********************************☆题目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()的内容。

#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:");scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}*********************************☆题目2已知数据文件IN.DA T中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

全国计算机等级考试三级网络技术南开上机100题

全国计算机等级考试三级网络技术南开上机100题

全国计算机等级考试三级网络技术南开上机100题几点说明:1、题目标题号前用“☆”显示的是2005年4月份本人根据各大论坛考生聩的题号集中而来,题号前加“★”为2005年9月上机考试题,其中难免有题型相同而题号增加的现象,此类标明,仅供参考。

2、每种题目,只用一种解题方法,加粗部分为解题答案,此种方法本人觉得容易理解,不易出错,适合初学者。

3、特别说明:所有解法,本人均上机验证通过。

4、个别南开题如57、100题,题目与原书有所不同,是按实际考试的题目所来,并对今年在实际上机中出现的考题,用红色部分表示实际上机题中的注明事项。

☆题目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()的内容。

#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:"); scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}☆题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

全国计算机等级考试三级C语言上机100题几点说明:**********************************☆题目1请编写一个函数jsValue(intm,intk,intxx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。

最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件out.dat中。

部分源程序存在文件prog1.c中。

例如:若输入175则应输出:19,23,29,31,37。

请勿改动主函数main()和写函数writeDat()的内容。

#include<conio.h>#include<stdio.h>voidreadwriteDat();intisP(intm){inti;for(i=2;i<m;i++)if(m%i==0)return0;return1;}voidnum(intm,intk,intxx[]){ints=0;for(m=m+1;k>0;m++)if(isP(m)){xx[s++]=m;k--;}}main(){intm,n,xx[1000];clrscr();printf("\nPleaseentertwointegers:");scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d",xx[m]);printf("\n");readwriteDat();}voidreadwriteDat(){intm,n,xx[1000],i;FILE*rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}*********************************☆题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

南开计算机等级考试上机100题(三级)

南开计算机等级考试上机100题(三级)

南开计算机等级考试上机100题(三级)1. 函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。

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

部分源程序已给出,原始数据文件存放的格式是:每行的宽度均小于80个字符。

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

#include#include#include#includeunsigned char xx[50][80];int maxline=0;/*文章的总行数*/int ReadDat(void)void WriteDat(void)void encryptChar(){ int i,j;char *p;for(i=0;i='a'&&xx[j]='0'&&p='A'&&p='0'&&xx[j]='A'&&xx[j] ='a'&&p130);else xx[j]=p; } }11.函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。

请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。

全国计算机等级考试三级网络技术上机题库(南开100题宝典最新版)

全国计算机等级考试三级网络技术上机题库(南开100题宝典最新版)

2013全国计算机等级考试三级网络技术上机试题库【南开100题最新版】Content整数排序题 (4)☆题目1(整数排序题) (4)☆题目2 正整数排序 (4)★☆题目3(整数统计排序题) (5)☆题目4(整数统计排序题) (5)题目5(整数运算排序题) (6)★题目6(整数各位统计排序题) (6)题目7(整数统计排序题) (7)★题目8(整数排序题) (7)★题目9(整数各位数字运算排序题) (8)题目10(整数各位数运算排序题) (8)★☆题目11 (整数各位数运算及排序题) (9)整数统计运算题 (9)★☆题目12整数统计运算题) (9)☆题目13(整数统计运算题) (10)☆题目14(整数统计运算题) (10)题目15(整数统计运算题) (11)题目16(整数统计运算题) (11)题目17(整数统计运算题) (12)☆题目18(整数统计运算题) (12)题目19(整数统计运算题) (12)题目20(整数各位数字运算题) (13)☆题目21(整数各位数字运算题) (13)题目22(整数各位数字运算题) (14)☆题目23(整数各位数字运算题) (14)题目24(整数各位数字运算题) (15)☆题目25(整数各位数字统计运算题) (15)★☆题目26(整数各位运算题) (15)题目27(整数各位数运算题) (16)☆题目28(整数各位数运算题) (16)☆题目29(整数各位运算统计题) (17)☆题目30 (18)题目31 (18)整数各位打散组合运算题 (19)★☆题目32(整数各位打散组合运算题) (19)☆题目33(整数各位打散组合运算题) (19)★☆题目34(整数各位打散组合运算题) (20)题目35(整数各位打散组合运算题) (20)★题目36(整数各位打散组合运算题题) (21)题目39(整数各位打散组合运算题) (23)素数题 (23)题目40(素数题) (23)题目41(素数统计排序题) (24)★☆题目42(素数题) (24)★题目43(素数题) (25)★题目44(素数题) (26)★题目45(数字运算题) (26)★题目46(数字统计排序题) (27)☆题目47(数字统计排序题) (27)字符型题 (28)题目48字符型题 (28)★题目49(字符处理——倒序输出) (29)★题目50(字符排序题) (29)★☆题目51(替换字符题) (30)☆题目52(亲朋字符替换题) (30)字符串处理题 (31)★☆题目53(字符串排序题) (31)☆题目54(字符串字母移位题) (32)★☆题目55(字符串左右排序交换题) (32)题目56(字符串左右排序交换题) (33)★题目57(字符串移位题) (33)题目58(字符串排序题) (34)★题目59(字符串左右排序题) (34)★题目60(字符ASCII值移位替换题) (35)方差运算题 (36)★☆题目61(方差运算题) (36)☆题目62(方差运算题) (36)☆题目63(方差运算题) (37)☆题目64(整数各位数运算题) (38)★题目65(字符替换题) (38)★☆题目66(字符替换题) (39)★题目67(字符替换题) (39)题目68(字符替换题) (39)题目69(字符替换题) (40)☆题目70(字符替换题) (40)★题目71(字符替换题) (41)☆题目72(字符替换题) (41)☆题目73(字符替换题) (42)★题目74(字符替换题) (42)★题目75(字符替题) (42)★☆题目76(字符替换题) (43)☆题目77(结构体操作题) (43)★☆题目78(结构体运算题题) (44)☆题目81(结构体运算题) (45)题目82(结构体运算题) (45)题目83 结构体运算题 (45)题目84(结构体运算题) (46)★题目85(结构体运算题) (46)题目86(结构体排列题) (47)选票问题 (47)题目87(选票问题) (47)★☆题目88(选票问题) (48)☆题目89(选票问题) (48)★☆题目90(级数运算题) (49)其他问题 (49)☆题目91(单词个数统计题) (49)★题目92(Fibonacci数列题) (50)☆题目93(迭代方法求方程题) (50)★题目94(平方根问题) (51)题目95 (实数运算题) (52)题目96(完全平方数问题) (53)★题目97 (回文数问题) (53)★题目98(出圈题) (54)☆题目99(SIX/NINE问题) (54)三级网络上机题型整数排序题☆题目1(整数排序题)在文件in.dat中有200个正整数,且每个数均在1000至9999之间。

三级网络南开100题

三级网络南开100题

计算机三级网络南开100题题目1:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。

请编写函数num(int m,int k,int xx[])实现函数的要求,最后调用函数readwriteDAT()把结果输出到文件out.dat中。

例如:若输入17,5,则应输出:19,23,29,31,37。

注意:部分源程序已给出。

请勿改动主函数main()和函数readwriteDAT()的内容。

--------------类型:素数。

void num(int m,int k,int xx[]){int data=m+1;int half,n=0,I;while(1){half=data/2;for(I=2;I<=half;I++)if(data%I==0)break;if(I>half){xx[n]=data;n++;}if(n>=k)break;data++;} }题目2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。

最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

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

程序中已定义数组: a[200], b[200], 已定义变量: cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

-------------------------void jsVal(){int bb[4];int I,j,k,flag;for (I=0;I<200;I++){bb[0]=a[I]/1000; bb[1]=a[I]%1000/100;bb[2]=a[I]%100/10; bb[3]=a[I]%10;for (j=0;j<4;j++){if (bb[j]%2==0)flag=1;else{flag=0;break;}}if (flag==1){ b[cnt]=a[I];cnt++;} }for(I=0;I<cnt-1;I++)for(j=I+1;j<cnt;j++)if (b[I]<b[j]){k=b[I];b[I]=b[j];b[j]=k;}}题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中.例如:原文:You can create an index on any field.you have the correct record.结果: n any field.You can create an indexrd.yu have the crrect rec原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格.-------------------类型:字符串(单词)的倒置和删除。

全国计算机等级考试三级网络技术南开上机100题

全国计算机等级考试三级网络技术南开上机100题

全国计算机等级考试三级网络技术南开上机100题几点说明:1、题目标题号前用“☆”显示的是2005年4月份本人根据各大论坛考生聩的题号集中而来,题号前加“★”为2005年9月上机考试题,其中难免有题型相同而题号增加的现象,此类标明,仅供参考。

2、每种题目,只用一种解题方法,加粗部分为解题答案,此种方法本人觉得容易理解,不易出错,适合初学者。

3、特别说明:所有解法,本人均上机验证通过。

4、个别南开题如57、100题,题目与原书有所不同,是按实际考试的题目所来,并对今年在实际上机中出现的考题,用红色部分表示实际上机题中的注明事项。

☆题目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()的容。

#include <conio.h>#include <stdio.h>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:"); scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}☆题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a 中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

计算机三级上机:适用于三级网络技术、数据库等(南开100题)

三级C语言上机100题几点说明:**********************************☆题目1请编写一个函数jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。

最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件中。

部分源程序存在文件中。

例如:若输入17 5 则应输出:19,23,29,31,37。

请勿改动主函数main()和写函数writeDat()的内容。

#include <>#include <>void readwriteDat();int isP(int m){int i;for(i=2;i<m;i++)if(m % i==0)return 0;return 1;}void num(int m,int k,int xx[]){ int s=0;for(m=m+1;k>0;m++)if(isP(m)) { xx[s++]=m; k--;}}main(){int m,n,xx[1000];clrscr();printf("\nPlease enter two integers:");scanf("%d%d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)printf("%d ",xx[m]);printf("\n");readwriteDat();}void readwriteDat(){int m,n,xx[1000], i;FILE *rf,*wf;rf=fopen("","r");wf=fopen("","w");for(i=0;i<10;i++){fscanf(rf,"%d %d",&m,&n);num(m,n,xx);for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);fprintf(wf,"\n");}fclose(rf);fclose(wf);}*********************************☆题目2已知数据文件中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

全国计算机等级考试三级C语言上机100题**********************************☆题目1请编写一个函数num(int m,int k,intxx[]),该函数的功能是:将大于整数m 且紧靠m的k个素数存入数组xx传回。

最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件out.dat中。

部分源程序存在文件prog1.c中。

例如:若输入17 5 则应输出:19,23,29,31,37。

请勿改动主函数main()和写函数writeDat()的内容。

void num(int m,int k,int xx[]) /*标准答案*/{int data=m+1;Int n=0,i;while(n<k){ for(i=2;i<data;i++)if(data%i==0)break;if(i>=data){xx[n]=data;n++;}if(n>=k)break;data++;} }********************************☆题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。

最后main( )函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

注意:部分源程序存在文件prog1.c 中。

程序中已定义数组:a[200],b[200],已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

nt = 0 ;void jsVal(){ int i,j,qw,bw,sw,gw;for(i=0;i<MAX;i++){ qw=a[i]/1000; bw=a[i]/100%10;sw=a[i]%100/10; gw=a[i]%10;if(qw&&qw%2==0&&bw%2==0&&s w%2==0&&gw%2==0) b[cnt++]=a[i];}for(i=0;i<cnt-1;i++)for(j=i+1;j<cnt;j++) if(b[i]<b[j]) { qw=b[i]; b[i]=b[j];b[j]=qw;}}*********************************★题目3函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx 中;请编制函数StrOR( ),其函数的功能是:以行为单位依次把字符串中所有小写字母o左边的字符串内容移到该串的右边存放,然后把小写字母o删除,余下的字符串内容移到已处理字符串的左边存放,之后把已处理的字符串仍按行重新存入字符串数组xx中。

最后main()函数调用函数WriteDat()把结果xx输出到文件OUT5.DA T中。

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

注意:部分源程序存放在文件prog1.c中。

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

void StrOR(void){int i,righto,j,s,k;char tem[80];for(i=0;i<maxline;i++)for(j=strlen(xx[i])-1;j>=0;j--){ k=0;memset(tem,0,80);if(xx[i][j]=='o'){righto=j;for(s=righto+1;s<strlen(xx[i]);s++)tem[k++]=xx[i][s];for(s=0;s<righto;s++)if(xx[i][s]!='o')tem[k++]=xx[i][s];strcpy(xx[i],tem);}else continue;}}********************************** ★题目4函数ReadDat()实现从文件IN.DA T中读取一篇英文文章存入到字符串数组xx 中,请编制函数StrOL(),其函数的功能是:以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。

最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT6.DA T中。

例如:原文:You He MeI am a student.结果:Me He Youstudent a am I原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。

部分源程序存在文件prog1.c中。

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

void StrOL(void){ int i,j,k,s,m,strl;char str[80];for(i=0;i<maxline;i++){ strl=strlen(xx[i]);memset(str,0,80);s=k=0;for(j=strl-1;j>=0;j--){ if(isalpha(xx[i][j])) k++;else { for(m=1;m<=k;m++)str[s++]=xx[i][j+m];k=0;}if(!isalpha(xx[i][j]))str[s++]=' ';}for(m=1;m<=k;m++)str[s++]=xx[i][j+m];str[s]='\0';strcpy(xx[i],str); }}********************************** ☆题目5(整数排序题)在文件in.dat中有200个正整数,且每个数均在1000至9999之间。

函数ReadDat()读取这200个数存放到数组aa 中。

请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行降序排列。

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

例:处理前6012 5099 9012 7025 8088处理后9012 6012 7025 8088 5099部分源程序存在文件prog1.c中。

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

void jsSort(){int i,j,data;for(i=0;i<199;i++)for(j=i+1;j<200;j++)if(aa[i]%1000>aa[j]%1000||aa[i]%1000 ==aa[j]%1000&&aa[i]<aa[j]){data=aa[i];aa[i]=aa[j];aa[j]=data;}for(i=0;i<10;i++)bb[i]=aa[i];}********************************* ☆题目6正整数排序在文件in.dat中有200个正整数,且每个数均在1000至9999之间。

函数ReadDat()读取这200个数存放到数组aa 中。

请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b 中,如果后三位的数值相等,则按原先的数值进行升序排列。

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

例:处理前 9012 5099 6012 7025 8088 处理后 5099 8088 7025 6012 9012 注意:部分源程序已给出。

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

void jsSort() { int i,j,data; for(i=0;i<199;i++) for(j=i+1;j<200;j++) if(aa[i]%1000<aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]>aa[j]) {data=aa[i];aa[i]=aa[j];aa[j]=data;} for(i=0;i<10;i++) bb[i]=aa[i]; } ****************************** ☆题目7(结构体操作题) 已知在文件IN.DAT 中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。

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

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

请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell 中,最后调用函数WriteDat()把结果输出到文件OUT6.DA T 中。

部分源程序存在文件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||strcm p(sell[i].dm,sell[j].dm)==0&&sell[i].je<s ell[j].je) {xy=sell[i]; sell [i]=sell[j]; sell[j]=xy;} } ********************************* ★题目8(字符替换题) 函数ReadDat()实现从文件ENG.IN 中读取一篇英文文章,存入到字符串数组xx 中;请编制函数encryptChar(),按给定的替代关系对数组xx 中的所有字符进行替代,仍存入数组xx 的对应的位置上,最后调用函数WriteDat()把结果xx 输出到文件PS1.DA T 中。

相关文档
最新文档