编写程序,要求在无序数组中查找给定值出现的次数。帮我看看我哪错了,谢谢。
编写程序,要求在无序数组中查找给定值出现的次数。#include<stdio.h>intgetCount(){floata[10];inti;intx=0,times=0...
编写程序,要求在无序数组中查找给定值出现的次数。
#include<stdio.h>
int getCount()
{
float a[10];
int i;
int x=0,times=0;
printf("要查找的数:");
scanf("%d",&x);
for(i=0;i<10;i++)
{
if(x==a[i])
times++;
printf("出现的次数:",×);
}
return 0;
} 展开
#include<stdio.h>
int getCount()
{
float a[10];
int i;
int x=0,times=0;
printf("要查找的数:");
scanf("%d",&x);
for(i=0;i<10;i++)
{
if(x==a[i])
times++;
printf("出现的次数:",×);
}
return 0;
} 展开
2个回答
展开全部
从代码里面看,你是想查询数组a里面有没有数字x。
这段代码里面有这样几个问题:
数组a是没有进行初始化的。在程序汇总,如果没有进行初始化,数组的内容是“脏值”。
数组a的类型是float类型,x是int类型。直接使用float和int进行比较,是无法进行计算的。建议将数组a变更为float类型。
出现的次数应当输出times,而不是输出x
追问
大神,这个应该怎么改呢?不太懂,能不能直接给我程序~~多谢~~
追答
#include<stdio.h>
int getCount()
{
int a[10] = {1,2,4,5,7,3,5,2,3,1};
int i;
int x = 0, times = 0;
printf("要查找的数:");
scanf("%d", &x);
for (i = 0; i < 10; i++)
{
if (x == a[i])
times++;
}
printf("出现的次数:%d", times);
return 0;
}
int main()
{
getCount();
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询