高分求助。。C语言
删除重复元素保留1个描述输入n个整型数,把其中重复出现的元素删去(如出现三个5,则只保留第一次出现的5,删去后两个5),将剩余的元素顺次输出。整数个数n不大于300关于输...
删除重复元素保留1个
描述
输入n 个整型数,把其中重复出现的元素删去(如出现三个5,则只保留第一次出现的5,删去后两个5),将剩余的元素顺次输出。整数个数 n 不大于300
关于输入
第1行,输入整数的个数 n;
第2行,输入 n 个整数,整数之间以空格间隔;
关于输出
按原有顺序输出新数组(删除的不输出),数据之间以逗号间隔
例子输入
10
5 6 7 5 8 5 7 9 8 6
例子输出
5,6,7,8,9
怎么编写啊。。。还没有学指针。。能不用指针做么。。 展开
描述
输入n 个整型数,把其中重复出现的元素删去(如出现三个5,则只保留第一次出现的5,删去后两个5),将剩余的元素顺次输出。整数个数 n 不大于300
关于输入
第1行,输入整数的个数 n;
第2行,输入 n 个整数,整数之间以空格间隔;
关于输出
按原有顺序输出新数组(删除的不输出),数据之间以逗号间隔
例子输入
10
5 6 7 5 8 5 7 9 8 6
例子输出
5,6,7,8,9
怎么编写啊。。。还没有学指针。。能不用指针做么。。 展开
2个回答
展开全部
#include "stdio.h"
void main()
{
int i,j,n,num[300],temp,flag=0;
printf("输入整数个数:\n");
scanf("%d",&n);
scanf("%d",&num[0]);
for(i=1;i<n;i++)
{
scanf("%d",&temp);
for(j=0;j<i;j++)
{
if(temp==num[j])
{
flag = 1;
break;
}
}
if(flag)
{
i--;
n--;
}
else
{
num[i]=temp;
}
flag = 0;
}
for(i=0;i<n;i++)
{
printf("%d,",num[i]);
}
getch();
}
void main()
{
int i,j,n,num[300],temp,flag=0;
printf("输入整数个数:\n");
scanf("%d",&n);
scanf("%d",&num[0]);
for(i=1;i<n;i++)
{
scanf("%d",&temp);
for(j=0;j<i;j++)
{
if(temp==num[j])
{
flag = 1;
break;
}
}
if(flag)
{
i--;
n--;
}
else
{
num[i]=temp;
}
flag = 0;
}
for(i=0;i<n;i++)
{
printf("%d,",num[i]);
}
getch();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询