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

更新时间:2023-08-19 09:32:01 阅读量: 高中教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

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之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。

例:处理前 6012 5099 9012 7025 8088

处理后 9012 6012 7025 8088 5099

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];

}

****************************************************************************** ☆题目2 正整数排序

在文件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

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];

}

***************************************************************************

★☆题目3(整数统计排序题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该四位数连续大于该四位数以后的五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 void jsVal()

{int i,j,flag;

for(i=0;i<MAX-5;i++)

{for(j=i+1;j<=i+5;j++)

if(a[i]>a[j]&&a[i]%2) flag=1;

else {flag=0;break;}

if(flag==1) b[cnt++]=a[i];

}

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;}

}

*********************************************************************

☆题目4(整数统计排序题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 void jsVal()

{int i,j,flag;

for(i=0;i<MAX-5;i++)

{for(j=i+1;j<=i+5;j++)

if(a[i]<a[j]&&a[i]%2==0) flag=1;

else { flag=0; break;}

if(flag==1) b[cnt++]=a[i];

}

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;}

}

****************************************************************************

在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第二个数大于第一个数加第三个数的之和,其中满足条件的组数作为函数jsSort() 的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数WriteDat()把结果bb输出到文件out.dat中。

int jsSort()

{int i, j, cnt=0;

data ch;

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

if(aa[i].x2>aa[i].x1+aa[i].x3) bb[cnt++]=aa[i];

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;

}

************************************************************************

★题目6(整数各位统计排序题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的数输出到OUT.DAT文件中。

void jsVal()

{int i,j,thou,hun,ten,data;

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

{thou=a[i]/1000; hun=a[i]/100%10;

ten=a[i]%100/10; data=a[i]%10;

if(thou>=hun&&hun>=ten&&ten>=data&&a[i]%2) b[cnt++]=a[i];

}

for(i=0;i<cnt-1;i++)

for(j=i+1;j<cnt;j++)

if(b[i]>b[j]) {thou=b[i];b[i]=b[j];b[j]=thou;}

}

***********************************************************************

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 void jsVal()

{

int i,j,gw,sw,bw,qw;

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

{gw=a[i]%10; sw=a[i]/10%10;

bw=a[i]/100%10; qw=a[i]/1000;

if((qw+gw)==(sw+bw)&&a[i]%2) 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;}

}

*************************************************************************

★题目8(整数排序题)

下列程序的功能是:将一正整数序列{K1,K2,...,K9}重新排列成一个新的序列。新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现此功能,最后调用writeDat()函数将新序列输出到文件out.dat中。

说明:在程序中已给出了10个序列,每个序列有9个正整数,并存入数组a[10][9]中,分别求出这10个新序列。

例:序列{6,8,9,1,2,5,4,7,3}

经重排后成为{3,4,5,2,1,6,8,9,7}

jsValue(int a[10][9])

{ int i,j,k,val,num;

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

{ val=a[i][0];

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

if(a[i][j]<val)

{ num=a[i][j];

for(k=j;k>0;k--)

a[i][k]=a[i][k-1];

a[i][0]=num;

}

}

}

*******************************************************************************

★题目9(整数各位数字运算排序题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

void jsVal()

{int i,j;

int qw,bw,sw,gw;

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

{qw=a[i]/1000; bw=a[i]%1000/100;

sw=a[i]%100/10; gw=a[i]%10;

if((qw<=bw)&&(bw<=sw)&&(sw<=gw)&&(a[i]%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;}

}

***************************************************************************

题目10(整数各位数运算排序题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。

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

8129,8+1<>2+9,则该数不满足条件忽略。

jsValue()

{ int i,j,qw,bw,sw,gw;

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

{ qw=a[i]/1000; bw=a[i]/100%10;

sw=a[i]%100/10; gw=a[i]%10;

if(qw+bw==sw+gw) 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;}

}

**************************************************************************

★☆题目11 (整数各位数运算及排序题)

在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第一个数大于第二个数加第三个数的和,其中满足条件的组数作为函数jsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第一个数加第三个之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数writeDat()把结果bb输出到 文件out.dat中。

int jsSort()

{ int i,j,cnt=0;

data xy;

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

if(aa[i].x1>(aa[i].x2+aa[i].x3)) bb[cnt++]=aa[i];

for(i=0;i<cnt-1;i++)

for(j=i+1;j<cnt;j++)

if(bb[i].x1+bb[i].x3>bb[j].x1+bb[j].x3) { xy=bb[i]; bb[i]=bb[j]; bb[j]=xy;}

return cnt;

}

*************************************************************************

整数统计运算题

★☆题目12整数统计运算题)

已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数右移1位后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。

void CalValue(void)

{int i,data;

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

if(xx[i]>0)

{ totNum++;

data=xx[i]>>1;

if(data%2==0){totCnt++;totPjz+=xx[i];}

}

if(totCnt==0) totPjz=0;

else totPjz/=totCnt;

}

*************************************************************************

已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:

1、求出这文件中共有多少个正整数totNum;

2、求这些数中的各位数字之和是偶数的数的个数totCnt,

以及满足此条件的这些数的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。 void CalValue(void)

{ int i,qw,bw,sw,gw;

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

if(xx[i]>0)

{ totNum++;

qw=xx[i]/1000;

bw=xx[i]/100%10;

sw=xx[i]%100/10;

gw=xx[i]%10;

if((qw+bw+sw+gw)%2==0) { totCnt++; totPjz+=xx[i];}

}

if(totCnt==0) totPjz=0;

else totPjz/=totCnt;

}

**************************************************************************

☆题目14(整数统计运算题)

已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数中的各位数字之和是奇数的数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。

void CalValue(void)

{ int i ,qw,bw,sw,gw;

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

if(xx[i]>0)

{ totNum++;

qw=xx[i]/1000; bw=xx[i]/100%10;

sw=xx[i]%100/10; gw=xx[i]%10;

if((qw+bw+sw+gw)%2) { totCnt++; totPjz+=xx[i];}

}

if(totCnt==0) totPjz=0;

else totPjz/=totCnt;

}

**************************************************************************

已知数据文件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()的内容。 void jsVal()

{int i,j,thou,hun,ten,data;

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-hun-ten-data>=0&&a[i]%2) b[cnt++]=a[i];

}

for(i=0;i<cnt-1;i++)

for(j=i+1;j<cnt;j++)

if(b[i]>b[j]) {thou=b[i]; b[i]=b[j];b[j]=thou;}

}

**********************************************************************

题目16(整数统计运算题)

已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数右移1位后,产生的新数是奇数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。

void CalValue(void)

{int i,data;

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

if(xx[i]>0)

{ totNum++;

data=xx[i]>>1;

if(data%2){totCnt++;totPjz+=xx[i];}

}

if(totCnt==0) totPjz=0;

else totPjz/=totCnt;

}

*********************************************************************

请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx下标为偶数的元素值的算术平均值pj(保留2位小数)。

sum=0; pj=0.0; cnt1=cnt2=0;

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

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

else cnt2++;

if(i%2==0) {pj+=xx[i];sum++;}

}

pj/=sum;

*******************************************************************************

☆题目18(整数统计运算题)

请编制程序prog1.c,从文件IN.DAT中读取200个整数至数组xx中,求出最大数max及最大数的个数cnt和数组xx中能被3整除或能被7整除的算术平均值pj(保留2位小数)。

cnt=0; max=xx[0]; pj=0.0; n=0;

for(m=0;m<N;m++)

if(max<xx[m]) max=xx[m];

for(m=0;m<N;m++)

{if(xx[m]==max) cnt++;

if(xx[m]%3==0||xx[m]%7==0)

{ pj+=xx[m]; n++; }

}

pj/=n;

*****************************************************************************

题目19(整数统计运算题)

请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx中值为偶数的算术平均值pj(保留2位小数)。

结果cnt1,cnt2,pj输出到out.dat中。

cnt1=0; cnt2=0; pj=0.0;

for(m=0;m<N;m++)

if(xx[m]%2) cnt1++;

else { cnt2++; pj+=xx[m];}

if(cnt2==0) pj=0;

else pj/=cnt2;

****************************************************************************

题目20(整数各位数字运算题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。

例如:9123,9-1-2-3>0,则该数满足条件存入数组b中,且个数cnt=cnt+1。

9812,9-8-1-2>0,则该数不满足条件忽略。

jsValue()

{ int i,j,qw,bw,sw,gw;

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

{ qw=a[i]/1000; bw=a[i]/100%10;

sw=a[i]%100/10; gw=a[i]%10;

if(qw-bw-sw-gw>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;}

}

*******************************************************************

☆题目21(整数各位数字运算题 )

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。

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

8129,8+9<>1+2,则该数不满足条件忽略

jsValue()

{int i,qw,bw,sw,gw,j;

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

{qw=a[i]/1000; bw=a[i]%1000/100;

sw=a[i]%100/10; gw=a[i]%10;

if(qw+gw==bw+sw) 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;}

}

*****************************************************************************

题目22(整数各位数字运算题 )

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到out.dat文件。

例如:9123,9-1-2-3>0,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。9812,9-8-1-2<0,则该数不满足条件计算平均值pjz2。

jsValue()

{int i,qw,bw,sw,gw,n=0;

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

{qw=a[i]/1000; bw=a[i]%1000/100;

sw=a[i]%100/10; gw=a[i]%10;

if(qw-bw-sw-gw>0) {cnt++;pjz1+=a[i];}

else {n++;pjz2+=a[i];}

}

if(cnt==0) pjz1=0;

else pjz1/=cnt;

if(n==0) pjz2=0;

else pjz2/=n;

}

*******************************************************************************

☆题目23(整数各位数字运算题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。

例如:9123,9-1-2-3>0,则该数满足条件存入数组b中,且个数cnt=cnt+1。

jsValue()

{ int i,j,qw,bw,sw,gw;

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

{ qw=a[i]/1000; bw=a[i]/100%10;

sw=a[i]%100/10; gw=a[i]%10;

if((qw-bw-sw-gw)>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;}

}

*******************************************************************************

题目24(整数各位数字运算题)

下列程序的功能是:选出5000以下符合条件的自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的10倍。计算并输出这些四位自然数的个数cnt以及这些数的和sum。请编写函数countValue()实现程序的要求,最后调用函数writeDat()把结果cnt和sum,输出到文件OUT13.DAT中。

void countValue()

{int i,thou,hun,ten,data;

for(i=1000;i<5000;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;}

}

}

************************************************************************

☆题目25(整数各位数字统计运算题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是奇数,则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

void jsVal()

{int i,j,thou,hun,ten,data;

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&&thou%2&&hun%2&&ten%2&&data%2) b[cnt++]=a[i];

}

for(i=0;i<cnt-1;i++)

for(j=i+1;j<cnt;j++)

if(b[i]<b[j]) {thou=b[i]; b[i]=b[j];b[j]=thou;}

}

**********************************************************************************

★☆题目26(整数各位运算题)

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

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

{int i,j,thou,hun,ten,data;

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

{thou=a[i]/1000; hun=a[i]/100%10;

ten=a[i]%100/10; data=a[i]%10;

if((thou+ten==hun+data)&&a[i]%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]) {thou=b[i];b[i]=b[j];b[j]=thou;}

}

****************************************************************************

题目27(整数各位数运算题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到out.dat文件。

例如:1239,9-1-2-3>0,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。

8129,9-8-1-2<0,则该数不满足条件计算平均值pjz2。

jsValue()

{int i,j,thou,hun,ten,data,n=0;

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

{thou=a[i]/1000; hun=a[i]/100%10;

ten=a[i]%100/10; data=a[i]%10;

if(data-thou-hun-ten>0) { cnt++; pjz1+=a[i];}

else { n++; pjz2+=a[i];}

}

if(cnt==0) pjz1=0;

else pjz1/=cnt;

if(n==0) pjz2=0;

else pjz2/=n;

}

**************************************************************************

☆题目28(整数各位数运算题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加百位数等于十位数上的数加个位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出

到out.dat文件。

例如:7153,7+1=5+3,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+1<>2+9,则该数不满足条件计算平均值pjz2。

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];}

}

if(cnt==0) pjz1=0;

else pjz1/=cnt;

if(n==0) pjz2=0;

else pjz2/=n;

}

************************************************************************

☆题目29(整数各位运算统计题)

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到out.dat文件。

例如:6712,6+2=7+1,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+9<>1+2,则该数不满足条件计算平均值pjz2。

jsValue()

{ int i,gw,sw,bw,qw,cnt2=0;

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

{gw=a[i]%10; sw=a[i]/10%10;

bw=a[i]/100%10; qw=a[i]/1000;

if((qw+gw)==(sw+bw)) { cnt++;pjz1+=a[i]; }

else { cnt2++;pjz2+=a[i]; }

}

if(cnt==0) pjz1=0;

else pjz1/=cnt;

if(cnt2==0) pjz2=0;

else pjz2/=cnt2;

}

****************************************************

☆题目30

请编写一个函数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--;}

}

题目31

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。最后main( )函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

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&&sw%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;}

}

******************************************************************************

整数各位打散组合运算题

★☆题目32(整数各位打散组合运算题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab-cd>=0且ab-cd<=10且两个数均是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

void jsVal()

{int i,j,thou,hun,ten,data,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-cd)<=10&&ab%2==1&&cd%2==1&&ab>=10&&cd>=10)

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

}

for(i=0;i<cnt-1;i++)

for(j=i+1;j<cnt;j++)

if(b[i]<b[j]) {thou=b[i]; b[i]=b[j];b[j]=thou;}

}

*************************************************************************

☆题目33(整数各位打散组合运算题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab-cd>=10且ab-cd<=20且两个数均是偶数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。

void jsVal()

{ int i,j,qw,bw,sw,gw,ab,cd;

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

{ qw=a[i]/1000; bw=a[i]/100%10;

sw=a[i]%100/10; gw=a[i]%10;

ab=qw*10+sw; cd=gw*10+bw;

if(ab-cd>=10&&ab-cd<=20&&ab%2==0&&cd%2==0&&qw!=0&&gw!=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;}

}

***********************************************************************

★☆题目34(整数各位打散组合运算题)

没有提供求素数函数isprime() ,可自己编制

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数均是素数且新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

int isprime(int m)

{int i;

for(i=2;i<=m/2;i++)

if(m%i==0) return 0;

return 1;

}

void jsVal()

{int i,j,qw,bw,sw,gw;

int ab,cd;

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

{qw=a[i]/1000; bw=a[i]%1000/100;

sw=a[i]%100/10; gw=a[i]%10;

ab=10*qw+sw; cd=10*gw+bw;

if(isprime(ab)&&isprime(cd)&&ab>=10&&cd>=10) 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;}

}

*************************************************************************

题目35(整数各位打散组合运算题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和个位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的个位数字),以及把百位数字和十位数字组成另一个新的十位数(新十

位数的十位数字是原四位数的百位数字,新十位数的个位数字是原四位数的十位数字),如果新组成的两个十位数均是奇数并且两个十位数中至少有一个数能被5整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

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*thou+data; cd=10*hun+ten;

if(ab%2&&cd%2&&(ab%5==0||cd%5==0)&&ab>=10&&cd>=10) b[cnt++]=a[i];

}

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;}

}

***************************************************************************

★题目36(整数各位打散组合运算题题)

已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab<cd,ab必须是奇数且不能被5整除,cd必须是偶数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

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]/100%10;

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>=10&&cd>=10)

{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;}

}

***********************************************************************

本文来源:https://www.bwwdw.com/article/cz7j.html

Top