c语言键盘输入一个长度为10数组,统计其中有多少不相同的数据?

能不能帮忙发一下这道题的程序

void main()
{
int s[10];
int x =10;
printf("你需要输入10组数据\n");
for (int i = 0; i < 10; i++)
{
printf("输入第%d个数据:",i+1);
scanf("%d",&s[i]);
for (int j = 0; j < i; j++)
{
if (s[i]==s[j])//检测新输入的数据是否与之前的重复
{
x--;//有数据重复,x自减一
break;//检测到一次重复后退出检测
}
}
}
printf("有%d种数据",x);
}追问

但是重复次数多的话 x的输出值就是负值了啊


温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-19
#include<stdio.h>
int main()
{
int i,j,k,t=10,a[10];
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(j=0;j<i;j++)
{
for(k=j+1;k<i;k++)
{
if(a[j]==a[k])
{
t=t-1;
break;
}
}
}
printf("%d",t);
}
第2个回答  2020-03-30
#include<stdio.h>
int main()
{
int s[10];
int x =10;

for (int i = 0; i < 10; i++)
{
scanf("%d",&s[i]);
for (int j = 0; j < i; j++)
{
if (s[i]==s[j])
{
x--;
break;
}
}
}
printf("%d",x);
}
西石油的?不会多去群里问问,上百度问答有点骚。
相似回答