当前位置: 代码迷 >> C语言 >> [求助]在数组中确定某一元素的位置
  详细解决方案

[求助]在数组中确定某一元素的位置

热度:403   发布时间:2006-11-15 16:45:04.0
[求助]在数组中确定某一元素的位置
 
#include<stdio.h>
main()
{
int a[15]={100,97,91,85,76,71,66,56,45,34,24,19,15,9,1};
int b,*p;
p=a;
printf("please intput a number:(0-100)\n");
scanf("b=%d\n",&b);
for(p=a;p<a+15;p++)
{
if((*p-b)==0)
printf("in the string b is the number %d",p-a);
break;
}
if(p==a+14)
printf("error");
}
搜索更多相关的解决方案: 位置  元素  

----------------解决方案--------------------------------------------------------
[求助]???
请把问题说的明白点,你要求助什么?
----------------解决方案--------------------------------------------------------
此程序不能完全运行,大家帮忙看看。谢了。
----------------解决方案--------------------------------------------------------
你的方法很特别,可是我检查不出哪里错了,你看一下我的这个程序,希望有用!
#include<stdio.h>
main()
{
int a[15]={100,97,91,85,76,71,66,56,45,34,24,19,15,9,1};
int b,i;
printf("please intput a number:(0-100)\n");
scanf("%d",&b);
for(i=0;i<15;i++)
if((a[i]-b)==0)
printf("in the string b is the number %d",(i+1));
}
----------------解决方案--------------------------------------------------------
最好还是用这个
#include<stdio.h>
main()
{
int a[15]={100,97,91,85,76,71,66,56,45,34,24,19,15,9,1};
int b,i,flag=1;
printf("please intput a number:(0-100)\n");
scanf("%d",&b);
for(i=0;i<15;i++)
{
if((a[i]-b)==0)
{printf("in the string b is the number %d",(i+1));flag=0;break;}
}
if(flag)
printf("error");
}

----------------解决方案--------------------------------------------------------
我帮你写了一个用指针实现的,,你参考一下:
#include<stdio.h>
main()
{
int a[15]={100,97,91,85,76,71,66,56,45,34,24,19,15,9,1};
int i,b,*p;
p=a;
for(i=0;i<15;i++)
{
printf("%d ",*(p+i));
}
printf("please input a number b:\n");
scanf("%d",&b);
printf("b= %d\n",b);
p=a;
for(i=0;i<15;i++)
{
if(*(p+i)!=b)
continue;
else if(*(p+i)==b)
printf("the location is: %d",i+1);
}
}
----------------解决方案--------------------------------------------------------
  相关解决方案