上机填空题2528Word格式.docx

上传人:b****1 文档编号:959373 上传时间:2023-04-29 格式:DOCX 页数:13 大小:18.09KB
下载 相关 举报
上机填空题2528Word格式.docx_第1页
第1页 / 共13页
上机填空题2528Word格式.docx_第2页
第2页 / 共13页
上机填空题2528Word格式.docx_第3页
第3页 / 共13页
上机填空题2528Word格式.docx_第4页
第4页 / 共13页
上机填空题2528Word格式.docx_第5页
第5页 / 共13页
上机填空题2528Word格式.docx_第6页
第6页 / 共13页
上机填空题2528Word格式.docx_第7页
第7页 / 共13页
上机填空题2528Word格式.docx_第8页
第8页 / 共13页
上机填空题2528Word格式.docx_第9页
第9页 / 共13页
上机填空题2528Word格式.docx_第10页
第10页 / 共13页
上机填空题2528Word格式.docx_第11页
第11页 / 共13页
上机填空题2528Word格式.docx_第12页
第12页 / 共13页
上机填空题2528Word格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

上机填空题2528Word格式.docx

《上机填空题2528Word格式.docx》由会员分享,可在线阅读,更多相关《上机填空题2528Word格式.docx(13页珍藏版)》请在冰点文库上搜索。

上机填空题2528Word格式.docx

a[i]=a[n-1-___2___];

___3___=t;

}

main()

intb[9]={1,2,3,4,5,6,7,8,9},i;

printf("

\nTheoriginaldata:

\n"

);

9;

%4d"

b[i]);

fun(b,9);

\nThedataafterinvert:

26

请补充fun函数,该函数的功能求能整除x,且是偶数的数,把这些数保存在数组bb,并按从大到小输出。

例如,当x=20时,依次输出:

201042。

conio.h>

voidfun(intk,intbb[])

inti;

intj=0;

for(___1___;

i<

=k;

i++)

if(___2___)

bb[j++]=i;

\n\n"

for(i=___3___;

i>

=0;

i--)

%d"

bb[i]);

intk=1;

intbb[100];

clrscr();

printf("

\nPleaseinputX\n"

);

scanf("

%d"

&

k);

fun(k,bb);

27

请补充fun函数,该函数的功能是:

统计所有小于等于n(n>

2)的素数的个数,素数的个数作为函数值返回。

intfun(intn)

inti,j,count=0;

\nTheprimenumberbetween2to%d\n"

n);

for(i=2;

=n;

j<

i;

j++)

if(___2___%j==0)

break;

if(___3___>

=i)

count++;

printf(count%15?

"

%5d"

:

"

\n%5d"

i);

returncount;

intn=20,r;

r=fun(n);

\nThenumberofprimeis:

%d\n"

r);

28

程序的功能是计算y=0!

+1!

+2!

+3!

+4!

+……+n!

longfun(intn)

longs;

s=___1___;

for(i=1;

s=___2___;

returns;

intk,n;

n);

s=___3___;

for(k=0;

k<

k++)

s=___4___;

%ld\n"

s);

明智的选择在淘宝

 

国货手机PK品牌手机

火热7月母婴用品大特卖

促销大联盟限时大抢购

09夏日男装采购节

09女人狂恋首饰潮

居家品省钱搜索,浪漫主义回归!

夏季特卖杯具大搜索~~

09别样手袋包包

解答

分析:

题目要求在fun函数中逆置数组元素中的值。

其中参数n给出数组中数据的个数。

为了实现以上要求,题目中的程序使用了以下思路:

将数组中最后一个数据和第一个数据进行互换,然后将倒数第二个数据和第二个数据进行互换,接着将倒数第三个数据和第三个数据进行互换,反复执行以上过程,直到互换完成。

为了实现以上思路,程序使用i变量记录从第一个数据开始进行互换的位置,使用n-i-1表示从最后一个数据开始进行互换的位置,然后i不断加一,使互换的数据不断向中间位置靠拢,直至i大于中间位置(即互换过程完成)。

程序注解如下:

/*a数组为要进行数据互换的数组,n为a数组中数据的个数*/

/*开始进行互换,直到i超出数据个数的一半*/

n/2;

/*将左边的数据先保存在t变量中,防止被下面语句覆盖而丢失*/

/*将右边对应位置的数据覆盖左边对应位置的数据*/

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

/*将预先保存在t变量的左边的数据覆盖右边对应位置的数据,完成互换*/

a[n-i-1]=t;

/*输出互换之前的数组中的所有数据*/

/*调用fun函数进行互换*/

/*输出互换之后的数组中的所有数据*/

/*fun函数求能被参数k整除的偶数,把这些数保存在数组bb,并按从大到小输出*/

/*j变量指示符合条件的偶数放在bb数组中的位置*/

/*由于数组从0开始,所以j的初始值设置为0*/

/*使用循环从1至k检查是否有偶整数能被k整除*/

/*使用k%i==0判断当前整数能否被k整除*/

/*使用i%2==0判断当前整数是否为偶数*/

if(k%i==0&

&

i%2==0)

/*将符合条件的整数放入bb数组,然后j加一,准备下一个存放位置*/

/*bb[j++]=i相当于bb[j]=i;

j++*/

/*由于题目要求按从大到小输出,所以从后往前输出bb数组中的整数*/

/*j由于for循环中多加了一次,所以需要减去一然后作为偶数个数赋值给i*/

/*--j先将j减去一,然后将j的值赋值给i*/

for(i=--j;

/*clrscr函数用于清除输出窗口中已经显示的内容*/

/*clrscr函数定义在conio.h,所以需要#include<

*/

该题的核心在于如何判断一个数是素数。

所谓素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。

例如,15=3*5,所以15不是素数;

又如,12=6*2=4*3,所以12也不是素数。

另一方面,13除了等于13*1以外,不能表示为其它任何两个整数的乘积,所以13是一个素数。

了解素数的概念之后,我们介绍一下程序使用的实现思路如下。

由于题目要求统计所有小于等于n(n>

2)的素数的个数,所以程序使用for循环从2开始至n之间的整数i逐一进行检查,检查过程如下:

使用for循环逐一检查从整数2至整数i-1之间是否存在整数j能够被当前检查的整数i整除,如果存在这样的整数的话,整数j就不是素数。

否则整数j就是一个素数,记录素数个数的变量count增加一。

当以上内层for循环结束的时候,继续外层for循环,将2至n之间的整数逐个的进行内层循环的检查。

当所有循环结束的时候,count变量即为所有小于等于n(n>

2)的素数的个数。

fun函数直接将count作为返回值返回即可。

/*count变量最终记录所有小于等于n(n>

2)的素数的个数*/

/*在输出窗口输出提示信息*/

/*从2到n逐一判断是否是素数*/

/*判断当前整数i能否整除2至i-1的之间任一整数*/

for(j=2;

/*如果能整除任一整数则不是素数,所以退出循环*/

if(i%j==0)

/*如果j>

=i,说明以上for循环没有执行break语句中途退出*/

/*那么说明整数i不能整除2至i-1的之间任一整数,所以i是一个素数*/

if(j>

/*因为i是一个素数,所以记录素数个数的count变量加一*/

/*以下输出是素数的整数i,同时保证每一行15个素数*/

/*将统计的素数个数作为函数返回值返回*/

/*调用fun函数进行题目要求的处理,接收fun函数的返回值*/

/*输出fun的处理结果*/

由于题目要求计算y=0!

+1!

+2!

+3!

+4!

+……+n!

,所以需要使用循环从0至n计算每一项阶乘。

而阶乘n!

的计算公式是n!

=n*(n-1)*(n-2)*(n-3)*……*3*2*1,所以计算阶乘n!

也需要使用循环,这个循环应该从1至n。

/*fun函数计算参数n的阶乘,即n!

的值*/

/*因fun函数的s变量保存n!

的值,而n!

是使用乘法计算的,所以初始值为1*/

s=1;

/*计算i!

的值,将i!

的值放入s变量中*/

s=s*i;

/*输入n的值*/

/*s变量保存y=0!

的合计值,所以初始化为0*/

s=0;

/*计算0!

+……+k!

的值,将k!

s=s+fun(k);

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2