当前位置: 代码迷 >> C语言 >> [求助]SOS明天要交的作业啊
  详细解决方案

[求助]SOS明天要交的作业啊

热度:221   发布时间:2007-08-02 15:02:59.0
[求助]SOS明天要交的作业啊

代码是没错 ! 可是结果有点小错误麻烦大家帮我改下
#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没找到这个数");
}



搜索更多相关的解决方案: void  include  search  

----------------解决方案--------------------------------------------------------

上面那个少打了点代码
#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次


----------------解决方案--------------------------------------------------------
以下是引用youniankang在2007-8-2 15:23:15的发言:
结果是
请输入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语句的前面
----------------解决方案--------------------------------------------------------
回复:(pinglideyu)你看这样行不:#include
谢谢 原来要怎么样子写哦  
----------------解决方案--------------------------------------------------------
不麻烦大家了  知道怎么做了 谢谢
----------------解决方案--------------------------------------------------------
  相关解决方案