1.通过指针方式遍历数组:遍历输入和遍历输出。建议大家参考普通int类型格式来做。
#include <stdio.h>
int main(int argc, const char *argv[])
{
int nums[5];
int* p=nums;
printf("请输入五个数字:\n");
for(int i=0;i<5;i++)
{
scanf("%d",p+i);
}
for(p;p<=&nums[4];p++)
{
printf("%d\n",*p);
}
return 0;
}
运行结果
2.定义一个整型数组,要求从终端输入5个数字。再输入一个数字n。判断n是否存在于那5个数字中
12345 6---》6不在数组中
12345 4---》4在数组中
#include <stdio.h>
int main(int argc, const char *argv[])
{
int nums[5],n,find=0;
int* p=nums;
printf("请输入五个数字:\n");
for(int i=0;i<5;i++)
{
scanf("%d",p+i);
}
printf("请输入你要查找的数:\n");
scanf("%d",&n);
for(p;p<=&nums[4];p++)
{
if(*p == n)
{
find=1;
break;
}
}
if(find)
printf("%d在数组中\n",n);
else
printf("%d不在数组中\n",n);
return 0;
}
运行结果
3.判断最大值
定义一个无符号的整型数组,求数组中的最大值。
思路:inta1=10,a2=20,a3=5;两两相比,求最大值
#include <stdio.h>
int main(int argc, const char *argv[])
{
unsigned int nums[5]={45,34,78,55,12},max;
unsigned int* p=nums;
max = *p;
for(p;p<=&nums[4];p++)
{
if(max<*p)
max=*p;
}
printf("最大值是:%d\n",max);
return 0;
}
运行结果