实验7 数组程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验七数组程序设计
班级:学号:姓名:评分:
一.【实验目的】
1、熟练掌握使用一维数组编程的方法。
2、熟练掌握排序算术。
3、熟练掌握使用二维数组编程的方法。
4、进一步掌握C程序的调试方法和技巧。
二.【实验内容和步骤】
1、程序调试题
A.目标:进一步学习掌握程序调试的方法和技巧。
B.内容:参照《实验指导》教材P59“1.调试示例”,从键盘输入一个正整数n(0 ①调试正确的源程序清单 #include int main( ) { int i, j, n, x, a[10]; printf("输入数据的个数n:"); scanf("%d", &n); printf("输入%d个整数:", n); for(i = 0; i < n; i++) scanf("%d", &a[i]); printf("输入要插入的整数:"); scanf("%d", &x); for(i = 0; i < n; i++){ if(x > a[i]) continue; j = n - 1; while(j >= i){ /* 调试时设置断点 */ a[j+1] = a[j]; j--; } /* 调试时设置断点 */ a[i] = x; break; } if(i == n) a[n]=x; for(i = 0; i < n + 1; i++) printf("%d ", a[i]); putchar('\n'); return 0; } 2、完善程序,并调试运行程序 题目(1)求平均值。程序功能:从键盘上输入一个正整数repeat(0 ①调试正确的源程序清单 //程序功能:从键盘上输入一个正整数 repeat (0 // 输入一个正整数n(1 //提示:除在指定位置添加语句之外,请不要改动程序中的其他内容。 #include int main( ) { int ri, repeat; int i, n, sum; float aver; int a[10]; scanf("%d", &repeat); for(ri=1; ri<=repeat; ri++) { scanf("%d", &n); for(i=0; i //请在两条星线之间填入相应的代码, 求数组a的平均值(使用循环结构) /**************************************************************/ sum=0; for(i=0;i sum=sum+a[i]; aver=sum/n; /**************************************************************/ printf("aver=%.2f\n", aver); } } ②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。 题目(2)求最大值及其下标。程序功能:从键盘上输入一个正整数repeat(0 ①调试正确的源程序清单 //程序功能:从键盘上输入一个正整数 repeat (0 // 输入一个正整数n(1 //提示:除在指定位置添加语句之外,请不要改动程序中的其他内容。 #include int main( ) { int ri, repeat; int i, index1, index2, n; int a[10]; scanf("%d", &repeat); for(ri=1; ri<=repeat; ri++) { scanf("%d", &n); for(i=0; i //请在两条星线之间填入相应的代码, 求数组a中的最大值、最小值及对应下标值(使用循环结构) /************************************************************************************/ index1=index2=0; for(i=1;i if(a[i]>a[index1]) index1=i;