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);
}
}
}
}
测试数据
分别输入1000、100、10测试。
运行结果
出现问题及解决方法
当素数个数小于10时的处理不够完善,考虑不够周全。把“+2”的处理做的太勉强。
程序过大,不够精简,无用文字太多。
学习耐心与细心不足,如scanf(“%d”,&n);中的“&”经常忘记。
编程思想不够发散,例如如何判断素数,只能想出2种方式(其中1种为参考教科书上内容);在今后学习中应更多的动脑,综合运用所学。
基本功不够,如清屏clrscr()等函数用的不好,有时同样的问题多次犯,给实验课老师带来很大的麻烦。这说明我的知识不够广,有很多有用但不做考试要求的书中内容没有学好,认识程度不够深刻。就算以后c语言这门课程结束后,也应多看相关东西,多上机练习,才能真正从本质上提高自己。
物理实验报告 ·化学实验报告 ·生物实验报告 ·实验报告格式 ·实验报告模板
知识不够广泛,如vc++6.0等程序,自己试了好一阵也不会用;说明我电脑水平还是不够,自学能力不够。已会的东西掌握的还是不够好。
实验心得
通过本次c语言上机实验,我对这个介于人类与非人类之间
的计算机编程语言有了一定的体验。其间开心过、郁闷过、无奈过、彷徨过……随着实验的胜利成功与实验报告的胜利完成,有点微微的自豪感使人难忘。感谢高克宁老师的高标准、严要求,感谢实验课上小老师们的耐心指点,也感谢我在实验中经历过的点点滴滴……伴随着学习的深入,我发现高深的东西还有很多很多,等待着我自己去挖掘。对c语言,我会更加努力。
河南高考排名243480左右排位理科可以上哪些大学,具体能上什么大学
广西高考排名212400左右排位理科可以上哪些大学,具体能上什么大学
广东高考排名85850左右排位物理可以上哪些大学,具体能上什么大学
陕西高考排名150120左右排位理科可以上哪些大学,具体能上什么大学
福建高考排名3220左右排位历史可以上哪些大学,具体能上什么大学
河北高考排名114880左右排位物理可以上哪些大学,具体能上什么大学
公司贺信范文
旅游服务市场的优秀调查报告
房地产个人的述职报告
幼儿园安全生产月的活动方案范文
旅游服务市场的优秀调查报告
房地产个人的述职报告
总经理述职报告(通用五篇)
工程技术部述职报告
在幼儿园的暑假工作实践报告范文
大学生消费状况调查报告模板
重庆高考排名14250左右排位历史可以上哪些大学,具体能上什么大学
河北高考排名141780左右排位历史可以上哪些大学,具体能上什么大学
贵州高考排名122910左右排位文科可以上哪些大学,具体能上什么大学
河南高考排名13840左右排位文科可以上哪些大学,具体能上什么大学
四川电影电视学院和沈阳大学哪个好 附对比和区别排名
考浙江东方职业技术学院要多少分山西考生 附2024录取名次和最低分
云南高考排名44990左右排位理科可以上哪些大学,具体能上什么大学
黑龙江高考排名95680左右排位理科可以上哪些大学,具体能上什么大学
安徽高考排名91690左右排位理科可以上哪些大学,具体能上什么大学
岳阳职业技术学院的医学检验技术专业排名怎么样 附历年录戎数线
文山学院和韶关学院哪个好 附对比和区别排名
海南高考排名4000左右排位综合可以上哪些大学,具体能上什么大学
沈阳科技学院和广州软件学院哪个好 附对比和区别排名
重庆交通大学的能源与动力工程专业排名怎么样 附历年录戎数线
山东高考排名438500左右排位综合可以上哪些大学,具体能上什么大学
广东高考排名49880左右排位物理可以上哪些大学,具体能上什么大学
辽宁财贸学院和新疆农业大学哪个好 附对比和区别排名
青海高考排名16830左右排位理科可以上哪些大学,具体能上什么大学
广东高考排名224680左右排位物理可以上哪些大学,具体能上什么大学
皖西学院和山西中医药大学哪个好 附对比和区别排名
语文教师学期述职报告范文
语言类实习报告汇总六篇
关于美丽家乡的社会实践报告
客服主管岗位竞聘报告(客服主管岗位竞聘报告优秀范文)
物流公司员工年终述职报告
大学生消费情况社会调查报告
高中生暑假支教社会实践报告
暑期企业实践报告
三下乡实践报告-关于农村经济状况调查
精选业大实习报告模板集合9篇
个人原因辞职报告申请书范文(精选五篇)
副主任护师的述职报告
大学生幸福感的调查报告
餐厅自检自查报告
高三学生发展报告评语精选10篇