计算机程序设计基础.pptxVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
计算机程序设计基础第一页,共三十一页。三、数组问题:哪只羊最重?中秋佳节,有贵客来到草原,主人要从羊群中选一只肥羊宴请宾客,当然要选最重者。这样就要记录每只羊的重量,如果有成千上万只羊,不可能用一般变量来记录。可以用带有下标的变量,也就是这里要讲的数组。第二页,共三十一页。我们先看例子:用键盘输入10只羊的重量存放到一个名为sheep的数组中#include <stdio.h>void main()// 主函数{ float sheep[10]; // 数组,有10个浮点类型元素, // 用于存10只羊每一只的重量 float max;// 浮点类型变量,存放最肥羊的重量 int i,k; //整型变量,i用于计数循环,k用于记录最肥羊的号 max = 0.0;// 赋初值0 for ( i=0; i<10; i=i+1 ) // 计数循环 { // 循环,开始 printf(“请输入羊的重量sheep[%d]=”, i); // 提示用 scanf(“%f”, &(sheep[i])); // 输入第i只羊的重量 if ( max < sheep[i] ) { max = sheep[i]; // 让第i只羊为当前最肥羊 k=i;// 纪录第i只羊 } }// 循环结束 printf(“max=%f\n”, max); // 输出最肥羊的重量 printf(“number=%d\n”, k);// 输出最肥羊的编号}第三页,共三十一页。程序框图第四页,共三十一页。三、数组数组的定义 类型说明符 数组名 [ 常量表达式 ]例: float sheep[10]; int a2001[1000];说明1.数组名的第一个字符应为英文字母;2.用方括号将常量表达式括起;3.常量表达式定义了数组元素的个数;第五页,共三十一页。三、数组4.数组下标从0开始。如果定义5个元素,是从第0个元素至第4个元素; 例如 int a[5] 定义了5个数组元素如下: a[0], a[1], a[2], a[3], a[4] 这是5个带下标的变量,这5个变量的类型是相同的5.常量表达式中不允许包含变量; 例如 int n; n = 5; int a[n]; 不合法!第六页,共三十一页。三、数组数组初始化 是定义数组完成赋初值的任务 例如 int a[5] = { 3, 5, 4, 1, 2 }; a[0] = 3; a[1] = 5; a[2] = 4; a[3] = 1; a[4] = 2;第七页,共三十一页。请自己上机做6个实验1.#include <stdio.h> void main() { int a[4];// 声明项 printf(“a[0]=%d; a[1]=%d; a[2]=%d; a[3]=%d\n”, a[0], a[1], a[2], a[3]); }2.其他不变,改变声明项为 int a[4] = { 0, 1, 2, 3 };第八页,共三十一页。3.其他不变,改变声明项为 int a[4] = { 3, 8 };4.其他不变,改变声明项为 int a[4] = { 2, 4, 6, 8, 10 };5.其他不变,改变声明项为 int a[4] = { 2, 4, 6, d };6.其他不变,改变声明项为 int n=4; int a[n] = { 0, 1, 2, 3 };第九页,共三十一页。三、数组讨论问题:使用筛法求100以内的所有素数思路1.想象将100个数看作沙子和小石头子,让小石头子权称素数;让沙子当作非素数。弄一个筛子,只要将沙子筛走,剩下的就是素数了。2.非素数一定是2、3、4 …… 的倍数。3.使用数组,让下标就是100以内的数,让数组元素的值作为筛去与否的标志。比如筛去以后让元素值为1。第十页,共三十一页。方法的依据: 1至100这些自然数可以分为三类:单位数:仅有一个数1。素数: 是这样一个数,它大于1,且只有1和它自身这样两 个正因数。合数: 除了1和自身以外,还有其他正因数。1不是素数,除1以外的自然数,当然只有素数与合数。筛法实际上是筛去合数,留下素数。 为了提高筛选法效率,注意到: 令n为合数(这里是100),c为n的最小正因数,则据初等数论 只要找到c就可以确认n为合数,将其筛去。第十一页,共三十一页。程序框图如下:第十二页,共三十一页。上述框图很清晰地描述了筛法的思路:1.第一块是一个计数型的循环语句,功能是将prime数组清零。 prime[c] = 0; c = 2, 3,… ,1002.第二块是正因数d初始化为 d = 2。3.第三块是循环筛数。这里用了一个 do while 语句,属于一种直到型循环,其一般形式为: do { 循环体语句块 } while (

文档评论(0)

SYWL2019 + 关注
官方认证
文档贡献者

权威、专业、丰富

认证主体四川尚阅网络信息科技有限公司
IP属地江苏
统一社会信用代码/组织机构代码
91510100MA6716HC2Y

1亿VIP精品文档

相关文档

相关课程推荐