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

上传人:b****4 文档编号:3932404 上传时间:2022-11-26 格式:DOCX 页数:98 大小:51.65KB
下载 相关 举报
全国计算机等级考试三级C语言上机100题答案.docx_第1页
第1页 / 共98页
全国计算机等级考试三级C语言上机100题答案.docx_第2页
第2页 / 共98页
全国计算机等级考试三级C语言上机100题答案.docx_第3页
第3页 / 共98页
全国计算机等级考试三级C语言上机100题答案.docx_第4页
第4页 / 共98页
全国计算机等级考试三级C语言上机100题答案.docx_第5页
第5页 / 共98页
点击查看更多>>
下载资源
资源描述

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

《全国计算机等级考试三级C语言上机100题答案.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试三级C语言上机100题答案.docx(98页珍藏版)》请在冰豆网上搜索。

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

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

精品文档

全国计算机等级考试

三级C语言上机100题

1欢迎。

下载

一.排序类:

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

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

for(i=0;i

{

t=a[i];

if(t%2+t/10%2+t/100%2+t/1000%2==0)b[cnt++]=t;

}

for(i=0;i

for(j=i+1;j

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

voidreadDat()

{

inti;

FILE*fp;

fp=fopen("in.dat","r");

for(i=0;i

&a[i]);

fclose(fp);

}

voidmain()

{

inti;

readDat();

jsVal();

printf("满足条件的数=%d\n",cnt);

for(i=0;i

b[i]);

printf("\n");writeDat();

}

writeDat()

{

FILE*fp;

inti;

fp=fopen("out.dat","w");fprintf(fp,"%d\n",cnt);

for(i=0;i

fclose(fp);

}

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

如果四位数各位上的数字均是奇数,则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中。

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

注意:

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

精品文档

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include

#defineMAX200

inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

for(i=0;i

{

t=a[i];

if(t%2+t/10%2+t/100%2+t/1000%2==4)b[cnt++]=t;

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

voidreadDat()

{

inti;

FILE*fp;

fp=fopen("in.dat","r");

for(i=0;i

&a[i]);

fclose(fp);

}

voidmain()

{

inti;

readDat();

jsVal();

printf("满足条件的数=%d\n",cnt);

for(i=0;i

b[i]);

printf("\n");writeDat();

}

writeDat()

{

FILE*fp;

inti;

fp=fopen("out.dat","w");fprintf(fp,"%d\n",cnt);

for(i=0;i

fclose(fp);

}

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

依次从数组a中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文

件中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

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

if(a[i]>a[i+1]&&a[i]>a[i+2]&&a[i]>a[i+3]&&a[i]>a[i+4]&&a[i]>a[i+5]&&a[i]%2==0)

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

for(i=0;i

2欢迎。

下载

for(j=i+1;jb[j])

精品文档

{

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

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

依次从数组a中取出一个四位数,如果该四位数连续大于该四位数以前的五个数且该数是偶数(该四位数以前不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文

件中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

for(i=5;i<200;i++)if(a[i]>a[i-1]&&a[i]>a[i-2]&&a[i]>a[i

-3]&&a[i]>a[i-4]&&a[i]>a[i-5]&&a[i]%2==0)b[cnt++]=a[i];

for(i=0;i

for(j=i+1;j

}

}

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

请考生编制一函数jsVal(),其功能是:

依次从数组a中取出一个四位数,如果该四位数连续大于该四位数以后的五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文

件中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

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

if(a[i]>a[i+1]&&a[i]>a[i+2]&&a[i]>a[i+3]&&a[i]>a[i+4]&&a[i]>a[i+5]&&a[i]%2==1)b[cnt++]=a[i];

for(i=0;i

for(j=i+1;jb[j]){

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

6.

3欢迎。

下载

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

依次从数组a中取出一个四位数,如果该四位数连续大于该四位数以前的五个数且该数是奇数,且该数必须能被7整除(该四位数以前不满五个数,则不统计)则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

精品文档

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t;

for(i=5;i<200;i++)if(a[i]>a[i-1]&&a[i]>a[i-2]&&a[i]>a[i-3]&&a[i]>a[i-4]&&a[i]>a[i-5]&&a[i]%2==1&&a[i]%7==0)

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

for(i=0;i

for(j=i+1;j

if(b[i]

{

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

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

把千位数字和十位数字重新组成一个新的十位数ab(新十位

数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数

的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab-cd>=0且ab-cd<=10且两个数均是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。

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

中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include

#defineMAX200

inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t,ab,cd;

for(i=0;i

{

ab=a[i]/1000*10+a[i]/10%10;cd=a[i]%10*10+a[i]/100%10;

if(ab-cd>=0&&ab-cd<=10&&ab%2&&cd%2&&ab[i]/10!

=0&&cd/10!

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

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

t=b[i];b[i]=b[j];b[j]=t;

}

}

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

把千位数字和十位数字重新组成一个新的十位数ab(新十位

数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数

的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab-cd>=10且ab-cd<=20且两个数均是偶数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,

4欢迎。

下载

并要计算满足上述条件的四位数的个数cnt。

最后main()函数调用写函数writeDat()把结果

精品文档

cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t,ab,cd;

for(i=0;i

{

ab=a[i]/1000*10+a[i]/10%10;cd=a[i]%10*10+a[i]/100%10;if(ab-cd>=10&&ab-cd<=20&&ab%2==0&&cd%2==0&&a[i]/10!

=0&&a[i]/10!

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

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

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

把千位数字和十位数字重新组成一个新的十位数ab(新十位

数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数

的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数ab

零,则将满足此条件的四位数按从大到小的顺序存

入数组b中,并要计算满足上述条件的四位数的个数cnt。

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

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include

#defineMAX200

inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t,ab,cd;

for(i=0;i

{

ab=a[i]/1000*10+a[i]/10%10;cd=a[i]%10*10+a[i]/100%10;if(ab-

ab%5!

=0&&cd%2==0&&ab/10!

=0&&cd/10!

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

}

for(i=0;i

for(j=i+1;j

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

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

把千位数字和十位数字重新组成一个新的十位数ab(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的十位数cd(新十位数

5欢迎。

下载

的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两

精品文档

个十位数ab>cd,ab必须是偶数且能被5整除,cd必须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。

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

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include

#defineMAX200

inta[MAX],b[MAX],cnt=0;

voidjsVal()

{

inti,j,t,ab,cd;

for(i=0;i

{

ab=a[i]/1000*10+a[i]/10%10;

cd=a[i]%10*10+a[i]/100%10;

if(ab>cd&&ab%2==0&&

ab%5==0&&cd%2==1&&ab/10!

=0&&cd/10!

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

}

for(i=0;i

for(j=i+1;j

if(b[i]

{

t=b[i];

b[i]=b[j];

b[j]=t;

}

}

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

把千位数字和十位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的十位数字),以及把个位数字

和百位数字组成另一个新的十位数(新十位数的十位数字是原四位数的个位数字,新十位数的个位数字是原四位数的百位数字),如果新组成的两个十位数均是素数且新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b

中,并要计算满足上述条件的四位数的个数cnt。

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

件中。

注意:

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

程序中已定义数组:

a[200],b[200],已定义变量:

cnt

请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include#defineMAX200inta[MAX],b[MAX],cnt=0;

intisprime(intm){inti;for(i=2;i<=m/2;i++)if(m%i==0)return0;

return1;

}

voidjsVal()

{

inti,j,t;

for(t=0;t

{

i=a[t]/1000*10+a[t]/10%10;j=a[t]%10*10+a[t]/100%10;if(isprime(i)&&isprime(j)a[t]/1000&&a[t]%10!

=0)b[cnt++]=a[t];

}

for(i=0;i

&&

6欢迎。

下载

}

精品文档

}

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

把千位数字和个位数字重新组成一个新的十位数(新十位数的十位数字是原四位数的千位数字,新十位数的个位数字是原四位数的个位数字),以及把百位数字和十位数字组成另一个新的十位数(新十位数的十

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1