C语言,删除数组中的重复数字然后输出
#include "stdio.h"
成都创新互联公司自2013年创立以来,先为南雄等服务建站,南雄等地企业,进行企业商务咨询服务。为南雄企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
#include "string.h"
void main()
{
int i,k=1,j=10,a[10]={4,4,4,4,5,4,9,9,9,10};
for(k=i=1;i10;i++)
{
for(j=0;jk;j++)
{
if(a[j]==a[i]) break;
}
if(j==k) a[k++]=a[i];
}
printf(" \n ");
for(i=0;ik;i++)
{
printf(" %d ",a[i]);
}
扩展资料:
printf()函数的调用格式为:printf("lt;格式化字符串gt;",lt;参量表gt;)。
其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。
比如:
int a=1234;
printf("a=%d\n",a);
输出结果为a=1234。
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#includelt;stdio.hgt;。
int scanf(const char*restrict format,...);
函数scanf()是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
c语言问题数组去重
#include stdio.h
int main()
{
int m, n, i, cur, pre;
scanf("%d", m);
while (m--)
{
scanf("%d", n);
scanf("%d", cur);
pre = cur;
printf("%d ", cur);
for (i = 1; i n; i++)
{
scanf("%d", cur);
if (cur != pre)
{
pre = cur;
printf("%d ", cur);
}
}
printf("\n");
}
return 0;
}
c语言中一个一维数组怎样去重?
可以定义两个数组,将原来数组的不重复的数放到新数组中就可以了.(如果需要也可以释放原来数组的内存)#include stdio.h main() { int a[5]={1,1,2,1,2}; int i,j,k=0, b[5]={0}; for(i=0;i=4;i++) for(j=0;j=4;j++) if(a[i]!=b[j]) {b[k]=a[i];k++;} printf("去重后的数组为:"); for(i=0;i=k-1;i++) printf("a[i]=%d",a[i]); }
C语言,删除数组中的重复元素
#include stdio.h
#define N 1000
#define FLAG 0x80000000 /*特殊标记,用最小的负数表示*/
void main( )
{
int r[N], length, i, j;
scanf("%d", length);
for(i = 0; i length; i++)
scanf("%d", r[i]);
for(i = 0; i length - 1; i++)
{
if(r[i] != FLAG)
{
for(j = i + 1; j length; j++)
if(r[j] == r[i]) r[j] = FLAG; /*遇到重复值,则先用特殊标记覆盖它*/
}
}
for(i = 0; r[i] != FLAG; i++); /*找到第一个特殊标记*/
for(j = i + 1; j length;) /*删除数列中的特殊标记*/
{
if(r[j] != FLAG) r[i++] = r[j++];
else j++;
}
length = i; /*修改删除重复值后的数列的长度*/
for(i = 0; i length; i++)
printf("%-4d", r[i]);
}
C语言问题 把一个数组中的重复元素去掉
#define _CRT_SECURE_NO_DEPRECATE
#include iostream
#include string
#include algorithm
using namespace std;
去掉字符串中重复的字符并排序
int main()
{
string input;
while (cininput)
{
int count = 0; // 统计有多少个空格
for (int i = 0; i input.size(); i++)
{
for (int j = i+1; j input.size(); j++)
{
if (input[i] == ' ')
break;
if (input[i] == input[j])
{
input[j] = ' ';
count++;
}
}
}
int newsize = input.size() - count;
string str(newsize,'0'); //创建一个长为newsize,用‘0’填充的字符串
int j = 0;
for (int i = 0; i input.size(); i++)
{
if (input[i] != ' ')
{
str[j] = input[i];
j++;
}
}
sort(str.begin(), str.end());
cout strendl;
}
}
扩展资料:
while语句若一直满足条件,则会不断的重复下去。但有时,需要停止循环,则可以用下面的三种方式:
一、在while语句中设定条件语句,条件不满足,则循环自动停止。
如:只输出3的倍数的循环;可以设置范围为:0到20。
二、在循环结构中加入流程控制语句,可以使用户退出循环。
1、break流程控制:强制中断该运行区内的语句,跳出该运行区,继续运行区域外的语句。
2、continue流程控制:也是中断循环内的运行操作,并且从头开始运行。
C语言数组去除重复内容
#include stdio.h // 升序数组srcvoid sort(int *src, int len){ int tem; for (int i = 0; i len; i++) { for (int j = 0; j len - i - 1; j++) if (src[j] src[j+1]) { tem = src[j]; src[j] = src[j+1]; src[j+1] = tem; } }} int main(){ int num[10] = {0, 2, 5, 1, 1, 5, 4, 9, 2, 1}, d; int i = 0, cnt; sort(num, 10); // 排序 d = num[0]; for (i = 1; i 10; i++) // 遍历比较 { if (num[i] != d) { printf("%d ", d); d = num[i]; } } if (num[9] == d) printf("%d\n", d); return 0;}
当前题目:c语言数组去重的库函数,javascript数组去重函数
文章网址:http://lswzjz.com/article/phchjp.html