4个回答
展开全部
#include<stdio.h>
int main(){
int a[10001];//假设你输入的整数最大是10000
int i,temp;
for(i=1;i<=20;i++)//默认输入20个数字
{
scanf("%d",&temp);
a[temp]++;
}
for(i=0;i<=10000;i++){
if(a[i]>=0){
printf("数字%d 出现了 %d次\n",i,a[i]);
}
return 0;
}
如果你数字很大 那你可以把数组写在 int main()的 上面
我这里没编译器 粗略 给你写下 希望能帮到你
追问
#include
#define N 20
void main()
{
int i,a[N],j,num=0;
for(i=0;i=0;j--)
{
if(a[i]==a[j])
break;
}
if(j<0)num++;
}
printf("%d\n",num);
}
追答
·······貌似看错了题目 我写的很明白啦 这个不需要两层循环的 把我程序稍微改改就好了
#include<stdio.h>
int main(){
int a[10001];//假设你输入的整数最大是10000
int i,temp,cout;
for(i=1;i<=20;i++)//默认输入20个数字
{
scanf("%d",&temp);
a[temp]++;
}
for(i=0;i<=10000;i++){
if(a[i]>=0){
cout++;
}
printf("%d\n",cout);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[20],i,j,k,count=0;
for(i=0;i<20;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<19;i++)
{
for(j=i+1;j<=19;j++)
{
if(a[i]==a[j])
{
for(k=i-1;k>=0;k--)
{
if(a[k]==a[i])
break;
else
{
if(k==0)
count++;
}
}
}
}
}
printf("%d",20-count);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int arr[20];
int i,j,num=0,flag;
for(i=0;i<20;i++)
{
flag=1;
scanf("%d",&arr[i]);
for(j=0;j<i;j++)
if(arr[j]==arr[i])
flag=0;
if(flag)
num++;
}
printf("%d\n",num);
return 0;
}
int main()
{
int arr[20];
int i,j,num=0,flag;
for(i=0;i<20;i++)
{
flag=1;
scanf("%d",&arr[i]);
for(j=0;j<i;j++)
if(arr[j]==arr[i])
flag=0;
if(flag)
num++;
}
printf("%d\n",num);
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询