我详细解释下,是这样的,我要做一个数列N项查找程序(无论是等比还是等差或其他什么的)。
假设有一个已经定义好的数组(无论是初始化还是逐个),现在我要制作一个输入查找程序,这个查找程序是这样的,我输入我要查找的第N项元素以及输出这个元素以及这个元素对应的数值。
假设数组a=[20]={2,4,6,8,10},现在我要查找数组中第4项元素,虽然我已经知道第4项元素对应的数值是8,但是要是数组元素很长怎么办?所以就产生我想制作一个数列N项查找程序。
以下是我写的,不过程序不对,请大家帮我改一下。
#include <stdio.h>
#include <stdlib.h>
void main()
{
int i,n,f;
long int a[20]={2,4};
for(i=2;i<20;i++)
{
a[i]=a[i-1]+2;
}
while(1)
{
printf("输入元素号:");
scanf("%d,",f);
switch(f)
{
for(i=0,n=1;i<20&&n<21&&n==f;i++,n++)
{
printf("元素的数值:%d\n",a[i]);
}
}
}
system("pause");
}
我的C语言水平只学到二维数组那里,还没有学函数,指针什么的。,如果我提出的数列N项查找程序要用到函数和指针的话,请指导下,我还不会用指针和函数。
1、打开pycharm,新建Test_List.py,如图所示。
2、定义lista=('A','B','C','D','E'),使用len函数来判断数组长度,ALT+F10执行后可以看到结果是5,注意获取列表的值用【数组名+[序号]】。
3、通过【数组名+[序号]】可以获取数组里指定位置的元素值,有个前提是【指定位置】必须小于数组长度。
4、碰到这种复杂的数组,想要获取指定位置的值,就必须明确指定位置。
5、复杂数组想要获取正确的结果,指定的位置必须是【数组索引】。
在一维数组中查找指定元素的方法:
首先,定义数组,并对数组元素进行赋值
输入位置值,输出相应的元素值(即:查找指定位置的元素)
先判断位置是否合法,不合法,则输出位置错误,请重新输入
位置合法,则把位置值转为数组下标,通过下标来确定数据,进行输出,如:第一个元素的下标为0,第二个为1等等
输入一个数值,输出相应的下标(即:查找指定元素的位置)
循环遍历数组,检查数组中的各位数据是否与待查数值相等
如果相等,则提前结束循环:break;
否则,继续循环,检查下一个数
遍历完所有数组元素后,结束循环
循环结束后,检查循环变量值是否超过数组元素总数,
如果未超过,表示找到了相应数据,输出其下标位置,
否则,输出未找到相应元素。
参考代码: