- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
综合例题:在数组中查找一个给定的数 输入5个整数,将它们存入数组a中,再输入1个数x,然后在数组中查找x,如果找到,输出相应的位置,否则,输出“Not Found”。 输入:2 9 8 9 6 9 输出:1 输入:2 9 8 9 6 7 输出:Not Found #include stdio.h int main(void) { int i, x; int a[5]; printf(Enter 5 integers: ); for(i = 0; i 5; i++) scanf(%d, a[i]); printf(Enter x: ); scanf(%d, x); for(i = 0; i 5; i++) if(a[i] == x) { printf(Index is %d\n, i+1); break; } if(i== 5) printf(Not Found\n); return 0; } #include stdio.h int main(void) { int i, a[10],n; void reverse(int p[ ], int n); printf(Enter n: ); scanf(%d, n); printf(Enter %d integers: , n); for(i = 0; i n; i++) scanf(%d, a[i]); for(i=0, j=n-1; ij; i++, j--) { t = a[i]; a[i] = a[j]; a[j] = t; } for(i = 0; i n; i++) printf(%d\t, a[i]); return 0; } 例7.14 动态分配一个二维数组 习题7 p168页:2,4,5,8,9,10,11题 #include stdio.h int main() { float average(float array[10]); float score[10],aver; int i; printf(input 10 scores:\n); for(i=0;i10;i++) scanf(%f,score[i]); printf(\n); aver=average(score); printf(%5.2f\n,aver); return 0; } 定义实参数组 float average(float array[10]) { int i; float aver,sum=array[0]; for(i=1;i10;i++) sum=sum+array[i]; aver=sum/10; return(aver); } 定义形参数组 相当于score[0] 相当于score[i] 例7.11 有两个班级,分别有35名和30名学生,调用一个average函数,分别求这两个班的学生的平均成绩。 解题思路: 需要解决怎样用同一个函数求两个不同长度的数组的平均值的问题 定义average函数时不指定数组的长度,在形参表中增加一个整型变量i 从主函数把数组实际长度从实参传递给形参i 这个i用来在average函数中控制循环的次数 为简化,设两个班的学生数分别为5和10 #include stdio.h int main() { float average(float array[ ],int n); float score1[5]={98.5,97,91.5,60,55}; float score2[10]={67.5,89.5,99,69.5, 77,89.5,76.5,54,60,99.5}; printf(“%6.2f\n”,average(score1,5)); printf(“%6.2f\n”,average(score2,10)); return 0; } float average(float array[ ],int n) { int i; float aver,sum=array[0]; for(i=1;in;i++) sum=sum+ar
文档评论(0)