代码是没错 ! 可是结果有点小错误麻烦大家帮我改下
#include <stdio.h>
#define N 5
void main ()
{
int i;
int num[N],search;
int c=0;
printf("\n请输 %d 个数组元素: ",N);
for(i=0;i<N;i++)
scanf("%d",&num[i]);
printf("\n请输要找的数: ");
scanf("%d",&search);
fflush(stdin);
for(i=0;i<3;i++)
{
if(num[i]==search)
{
printf("\n在数组的第%d的位置上找到了数字%d找到次数%d\n",i+1,search,c);
c++;
}
}
if(c==0)
printf("\n没找到这个数");
}
----------------解决方案--------------------------------------------------------
上面那个少打了点代码
#include <stdio.h>
#define N 5
void main ()
{
int i;
int num[N],search;
int c=0;
printf("\n请输 %d 个数组元素: ",N);
for(i=0;i<N;i++)
scanf("%d",&num[i]);
printf("\n请输要找的数: ");
scanf("%d",&search);
fflush(stdin);
for(i=0;i<3;i++)
{
if(num[i]==search)
{
printf("\n在数组的第%d的位置上找到了数字%d\n找到次数%d\n",i+1,search,c);
c++;
}
}
printf("\n找到次数%d",c);
if(c==0)
printf("\n没找到这个数");
}
----------------解决方案--------------------------------------------------------
你看这样行不:
#include <stdio.h>
#define N 5
void main ()
{
int i;
int num[N],search;
int c=0;
printf("\n请输 %d 个数组元素: ",N);
for(i=0;i<N;i++)
scanf("%d",&num[i]);
printf("\n请输要找的数: ");
scanf("%d",&search);
fflush(stdin);
for(i=0;i<5;i++)
{
if(num[i]==search)
{
c++;
printf("\n在数组的第%d的位置上找到了数字%d\n找到次数%d\n",i+1,search,c);
}
}
if(c==0)
printf("\n没找到这个数");
printf("\n找到次数%d",c);
----------------解决方案--------------------------------------------------------
5个数组元素啊,你的for循环怎么才循环了3次?
把i<3改成i<5
----------------解决方案--------------------------------------------------------
结果是
请输入5个元素:1 1 2 3 4
请输要找的数: 1
在数组的第1的位置上找到了数字1
找到0次 ←这里为什么是0次 (这里应该也要出现找到1次啊!!怎么会是0呢)
在数组的第2的位置上找到了数字1
找到1次 ←这里是1次
找到2次Press any key to continue ←这里却出现找到了2次
----------------解决方案--------------------------------------------------------
结果是
请输入5个元素:1 1 2 3 4
请输要找的数: 1
在数组的第1的位置上找到了数字1
找到0次 ←这里为什么是0次 (这里应该也要出现找到1次啊!!怎么会是0呢)
在数组的第2的位置上找到了数字1
找到1次 ←这里是1次
找到2次Press any key to continue ←这里却出现找到了2次
把c++;改成c=c+1; 或者 改成++c;
c++运行的是这样的,先调用C的直,这个时候C的直还是0,然后再自加一,变成1了
----------------解决方案--------------------------------------------------------
打的快了点 大错字了for(i=0;i<3;i++) 该成for(i=0;i<5;i++)
我把c++ 该成++c 或 c=c+1 可是结果也是一样的啊 那里还是0啊
----------------解决方案--------------------------------------------------------
改成这样:
c++;
printf("\n在数组的第%d的位置上找到了数字%d\n找到次数%d\n",i+1,search,c);
就是把C++要放到printf语句的前面
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------
不麻烦大家了 知道怎么做了 谢谢
----------------解决方案--------------------------------------------------------