C高级第一次PTA作业(2)
6-1 在数组中查找指定元素
本题要求实现一个在数组中查找指定元素的简单函数。
1.设计思路
(1)算法:
第一步:定义一个数组名为a的数组,循环变量i,需要查找的数x,和数组元素的个数n。
第二步:读入n和需要查询的数x,并对数组各元素进行赋值。
第三步:调用函数,在函数中进行查找。
第四步:输出所查找数的在数组中的位置。
(2)流程图:
2.实验代码:
int search( int list[], int n, int x ){ int j,q=-1; for(j=0;j<n;j++){ if(x==list[j]){ q=j; break; } } return(q); }
3.本题调试过程碰到问题及解决办法:
错误信息;当查找的数在数组中多次出现是结果出去
改正方法:当第一次查找到的时候跳出这个循环,在语句后面加一个break;
6-2 找最大值及其下标
在一维整型数组中找出其中最大的数及其下标。
1.设计思路
(1)算法:
第一步:定义一个数组名为a的数组、循环变量i、最大值max、和数组中最大数的下标p。
第二步:对数组进行赋值。
第三步:调用函数。在函数中找到最大值及其对应的下标。
第四步:输出数组元素的最大值及其下标。
(2)流程图:
2.实验代码:
int fun(int *a,int *b,int n){ int q=a[0]; int j; for(j=0;j<n;j++){ if(q<a[j]){ q=a[j]; *b=j; } } return(q); }
3.本题调试过程碰到问题及解决办法:
无