预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共19页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

. [程序1] 用筛选法求100之内的素数 筛选法又称筛法,是求不超过自然数N〔N>1的所有质数的一种方法。据说是古希腊的埃拉 托斯特尼〔Eratosthenes,约公元前274~194年发明的,又称埃拉托斯特尼筛子。 具体做法是:先把N个自然数按次序排列起来。1不是质数,也不是合数,要划去。第二个数 2是质数留下来,而把2后面所有能被2整除的数都划去。2后面第一个没划去的数是3,把3 留下,再把3后面所有能被3整除的数都划去。3后面第一个没划去的数是5,把5留下,再把 5后面所有能被5整除的数都划去。这样一直做下去,就会把不超过N的全部合数都筛掉,留 下的就是不超过N的全部质数。因为希腊人是把数写在涂腊的板上,每要划去一个数,就在上 面记以小点,寻求质数的工作完毕后,这许多小点就像一个筛子,所以就把埃拉托斯特尼的方 法叫做"埃拉托斯特尼筛",简称"筛法"。 #include<stdio.h> #include<math.h> voidmain<> { inti,j; inta[100]; for<i=0;i<100;i++> a[i]=i+1; for<i=1;i<100;i++> { if<a[i]==0> 1/19 . continue; for<j=i+1;j<100;j++> if<a[j]%a[i]==0> a[j]=0; } for<j=1;j<100;j++>//j从1开始,去除a[0]〔其值为1,因为1既不是质数,也不是合 数 if<a[j]!=0> printf<"%d,",a[j]>; printf<"\n">; } [程序2] 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出 1000以内的所有完数。 程序源代码: #include<stdio.h> intmain<> { intk[10]; inti,j,n,s; for<j=2;j<1000;j++> { 2/19 . n=-1; s=j; for<i=1;i<j;i++> { if<<j%i>==0> { n++; s=s-i; k[n]=i; } } if<s==0>//说明是完数 { printf<"%disawanshu:",j>; for<i=0;i<=n;i++> printf<"%d",k[i]>; printf<"\n">; } } return1; } [程序3] 3/19 . 题目:用选择法对10个数进行从大到小排序 1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下 次类推,即用第二个元素与后8个进行比较,并进行交换。 2.程序源代码: #include<stdio.h> #defineN10 intmain<> { inti,j,max,tem,a[N]; /*inputdata*/ printf<"pleaseinputtennum:\n">; for<i=0;i<N;i++> { printf<"a[%d]=",i>; scanf<"%d",&a[i]>; } printf<"\n">; printf<"Beforesorted\n">; for<i=0;i<N;i++> printf<"%5d",a[i]>; printf<"\n">; /*sorttennum*/ 4/19 . for<i=0;i<N-1;i++> { max=i; for<j=i+1;j<N;j++> if<a[max]<a[j]>max=j; if<max!=i> { tem=a[i]; a[i]=a[max]; a[max]=tem; } } /*outputdata*/ printf<"Aftersorted\n">; for<i=0;i<N;i++> printf<"%5d",a[i]>; printf<"\n">; return1; } ======================================================== ====== [程序4] 5/19 . 题目:求一个3*3矩阵对角线元素之和 1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。 2.程序源代码: #include<stdio.h> intmain<> { floata[3][3],sum=0; inti,j; printf<"pleaseinputrectanglee