ImageVerifierCode 换一换
格式:DOCX , 页数:5 ,大小:36.31KB ,
资源ID:5616936      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5616936.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(西北工业大学C程序大作业范例.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

西北工业大学C程序大作业范例.docx

1、西北工业大学C程序大作业范例学 院班 级学 号姓 名摘要我选择的是数学型综合作业: (A)绘制圆;(B)求最大数。 主要内容: (A)在屏幕上用*绘制一个圆; (B)问555555的约数中最大的三位数是多少。 基本设计思路: (A)题目的设计思路是:将(x, y)转换为相当圆心(r, r)的坐标。计算到圆心的距离。判断到圆心的距离是否为r。如果这个点在圆上,打印*,否则,打印 。(B)题目的设计思路是:根据约数的定义,对于一个整数N,除去1和它自身外,凡能整除N的数即 为N的约数。本题只要求取约数中最大的三位数,因此,最简单的方法是用100到999之间的所有数去除555555,即可求 出555

2、555的全部约数。在(A)题目中,我选择用离圆心的距离r来判断是否打印*。在(B)题目中由于只要求输出最大三位约束,故可以使用for语句从999开始,每次递减,可以减少循环次数。会更快且更方便的得到结果。通过编译运行,俩个程序的结果都满足题意要求,个人感觉比较好的完成了大作业。1 摘要1.1 设计题目()绘制圆;(B)求最大数。1.2 设计内容()在屏幕上用*绘制一个空心的圆;()问555555的约数中最大的三位是多少? 1.3 开发工具Visual Studio 20101.4 应用平台Windows 64位2 详细设计2.1 程序结构(A)在屏幕上用*绘制一个空心的圆定义变量 半径r,rx

3、,ry。赋值r将(x, y)转换为相当圆心(r, r)的坐标rx,ry。计算到圆心的距离d。判断到圆心的距离是否为r,用if语句。是的话打印*,否则 。开始rx = x r,ry = y - rd = sqrt(rx*rx + ry*ry) rif(fabs(d) =100;j-) /for循环从999开始每次递减一if(i%j=0) /当满足此条件时停止循环,输出结果printf(The max factor with 3 digits in %ld is:%d,n,i,j);结束2.2 主要功能程序功能: (A)在屏幕上用*绘制一个空心的圆; (B)求555555的最大三位约数。原理和方法

4、:将(x, y)转换为相当圆心(r, r)的坐标。计算到圆心的距离。判断到圆心的距离是否为r。如果这个点在圆上,打印*,否则,打印 。循环语句采用 for 循环。 (B)题目的原理和方法:i=555555,j从999开始,通过for语句判断i%j=0,每循环一次,j-;循环到符合条件的j,输出555555的最大三位约数。2.3 函数实现1(A)在屏幕上用*绘制一个空心的圆。int rx = x - r; ry = y rdouble, d = sqrt(rx*rx + ry*ry) ;for (y=0; y2*(r+1); y+) for (x=0; x=100;j-) f(i%j=0)2.4

5、 开发日志(A)我先分析此题用何种算法完成,确定了使用 FOR 循环并用if语句判断距离是否为半径,再一步步编写源代码。调试过程有一次调用函数错误,改正后运行程序,结果正确。 (B)我直接定义i=555555,j=999,然后使用for语句开始循环,终止条件是i%j=0;此时结束循环,输出结果,结果正确。3 程序调试及运行3.1 程序运行结果3.1 程序运行结果(A)在屏幕上用*绘制一个空心的圆()求的最大三位约数。结果是正确。3.2 程序使用说明(A)打开源程序,编译,连接,然后运行即可得到用*绘制一个空心的圆(B)打开源程序,编译,连接,然后运行即可得到的最大三位约数是777。3.3 程序

6、开发总结程序开发需要认真,仔细、耐心,每一步都要认真完成,不管是哪步出了问题都可能导致得不到最后的结果。当然也要注意利用手中的设备条件,方便自己更快、更准确地找到错误并改正。另一方,程序开发需要创新,创新的思路,创新的算法可以简化程序,也是程序编写更加快捷。在这次大作业的完成当中,也碰到了一些不会的棘手的步骤,请教了同学后最后总算成功做出来了。4 附件(源程序)(A)在屏幕上用*绘制一个空心的圆(工程名称:用*绘制一个空心的圆)#include #include int isAtCircle(int x, int y, int r) int rx=x-r; int ry=y-r; double

7、 d=sqrt(double)(rx*rx+ry*ry)-r; if(fabs(d)0.5) return 1; else return 0; return (int)d;void printCircle(int r) int x, y; for (y=0;y2*(r+1);y+) for (x=0;x2*(r+1);x+) if (isAtCircle(x,y,r) printf(* ); else printf( ); printf(n); int main() int r; printf(请输入半径nr = ); scanf(%d, &r); printCircle(r); return 0;(B)求最大数(问555555的最大三位约数是多少?#include void main()long i=555555;int j;for(j=999;j=100;j-)if(i%j=0)printf(The max factor with 3 digits in %ld is:%d,n,i,j);break;

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

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