C语言程序设计实验报告优秀范文

免费
C语言程序设计实验报告优秀范文
实验名称 计算出 1000 以内 10 个最大素数之和
实验目的
1、熟练掌握 if、if…else、if…else if 语句和 witch 语句格式及使用方法,掌握
if 语句中的嵌套关系和匹配原则,利用 if 语句和 switch 语句实现分支选择结构。
2、熟练掌握 while 语句、do…while 语句和 for 语句格式及使用方法,掌握三种循环
控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。
3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习
调试程序,掌握语法错误和逻辑错误的检查方法。
实验内容
计算并输出 1000 以内最大的 10 个素数以及它 的和。们
要求:
在程序内部加必要的注释。
由于偶数不是素数,可以不考虑对偶数的处理。
虽然在 1000 以内的素数超过10 个,但是要对1000 以内不够10 个素数的情况 行进 处
理。
输出形式为:素数 1+素数 2+素数 3…+ +素数 10=总和值。
算法描述流程图
main 函数:
判断素数:
源程序
#include
#include
int sushu(int n)/* 判断素数的函数 */
{
int t,i;
t=sqrt(n);
for(i=2;i<=t;i++)
if(n%i==0)/* 如果不是素数,返回 0 */
return 0;
return n;/* 如果是素数,返回 数该*/
}
void main
{
int i,j=0,n,m=0,a[1000],x;
/*clrscr;*/
printf("please input a number form 1 to 1000:");
scanf("%d",&x);
if(x==2)/* x=2 时的处理 */
printf("%dn",x);
else if(x<=1) /* x 在1~1000 范围外时的处理 */
printf("error!n");
else
{
if(x%2==0)/* x 为偶数时,把 x 变为奇数 */
x--;
for(i=x;i>1;i-=2)/* x 为奇数时,做函数计算 */
{
n=sushu(i); /* 做判断素数的函数调用 */
if(n!=0)/* 素数的 理对 处 */
{
a[j]=n;/* 把素数由大至小存入数组 a[ ] 中*/
j++;
if(j<11)
m+=n; /* 统计前 10 个素数之和 */
}
}
if(j<10)/* 当素数个数小于 10 个,果出时结输 */
{
for(i=0;i
{
n=a[i];
printf("%d",n);
printf("+");
}
printf("2=");
printf("%dn",m+2);
}
else for(i=0;i<10;i++)/* 当素数个数大于等于 10 个,果出时结输 */
{
n=a[i];
printf("%d",n);
if(i<9)
printf("+");
else
{
printf("=");
printf("%dn",m);
}
摘要:
展开>>
收起<<
C语言程序设计实验报告优秀范文 实验名称计算出1000以内10个最大素数之和 实验目的 1、熟练掌握if、if…else、if…elseif语句和witch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。 2、熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。 3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。 实验内容 计算并输出1000以内最大的10个素数...
声明:本文档由网友提供,仅限参考学习,如有不妥或产生版权问题,请联系我们及时删除。
客服请联系: fanwenhaiwang@163.com 微信:fanwenhai2012
作者:Jazy
分类:实用范文
价格:免费
属性:4 页
大小:38.21KB
格式:DOCX
时间:2024-07-10