#include<stdio.h>
void main()
{
int i,j,p,q;
char a[8]={'a','b','b','c','d','a','v','b'};
for(i=0;i<8;i++)
{
for(j=i+1;j<=8;j++);
if(a[i]=a[j])
{
do
{a[j]=a[j+1];j++;}
while(j<=8);
}
}
puts(a[8]);
}
这是我写的,输出的是乱码。帮忙看下哪错了吧谢谢了
我还是喜欢按自己的思路来。就是把每个字符依次和后面的字符比较,如果相同,就把后面的每一个字符都用它之后的字符替换。
留香给改的基本正确了,不过运行的时候最后多出来一个b,我不知道是哪错了。再给看看吧。一楼的兄弟改的运行后输出除了本该输出的内容外还有一串乱码,三楼的我看不懂。
#include<stdio.h>
void main()
{
int i,j,p,q;
char a[9]={'a','b','b','c','d','a','v','b','\0'};
for(i=0;i<8;i++)
{
for(j=i+1;j<=8;j++)
if(a[i]==a[j])
{
do
{a[j]=a[j+1];j++;}
while(j<=8);
}
}
puts(a);
}
c语言编写一段去除字符数组中重复的字符的程序
return 1;\/\/输入的字符未存在 };void main(){ printf("请输入字符串:");char c;scanf("%c",&c);while((int)c!=10)\/\/获取用户输入 { detail temp;temp.c = c;temp.exist = check(c);statics.push_back(temp);scanf("%c",&c);} std::vector<detail>::iterator ite = statics....
C语言问题 把一个数组中的重复元素去掉
include <iostream> include <string> include <algorithm> using namespace std;去掉字符串中重复的字符并排序 int main(){ string input;while (cin>>input){ int count = 0; \/\/ 统计有多少个空格 for (int i = 0; i < input.size(); i++){ for (int j = i+1; j < input.size...
C语言 删除输入的数组中的重复元素(最多20个元素) 要求编写函数,且头...
include <stdio.h>\/\/ *n是数组元素个数 void Delete_Same(int a[], int *n){ int i, j; int tag[20] = {0}; \/\/tag[i]标记a[i]是否使用过 for(i = 0; i < *n; ++i) { if( tag[i] ) continue; else{ for(j = i+1; j < *n; ++...
C语言中删除字符串中的重复字符,然后输出新的字符串
include <stdio.h>#include <string.h>int main(){ char c,str[80]; int i=0,j,k,len; printf("input:"); gets(str); len=strlen(str); c=str[i]; while(c!='\\0') { for(j=i+1;str[j]!='\\0';j++) { if(str[j]==c) { for...
c语言排序后删除数组中重复的数字再排序输出
voidbubble_sort(char*str);intmain(){ charstr[SIZE];gets(str);delete_repeat(str);bubble_sort(str);puts(str);return0;} \/\/删除重复字符 voiddelete_repeat(char*str){ \/**判断数组内第i个字符是否与前i-1个字符存在重复:若重复,删除该字符,i之后的字符下标均减1,后重新判断新的第i...
c语言去掉重复的字符后输出.
if(str[i]==b[j]) break;\/\/如果str中的字符与已经放入b中的字符相同则终止循环 else if((str[i]!=b[j])&&(j==k-1))\/\/如果与已经放入b中的所有字符都不同则把字符放入b中 { b[k]=str[i];k++;\/\/每次往b字符串中放入一个字符k就加一 k是b字符串的个数 } } } b[k]='\\...
C语言程序:题目:从键盘输入一个字符串,按照字符顺序从小到大进行排序...
int i;gets(str1);\/\/读取一个字符串 for(i=0;str1[i];i++){ str2[str1[i]]=1;\/\/str1中每个字符的assic码作为str2的下标值,并把对应位置填充为1,同一个字符的assci值相同,所以这样就去掉了重复字符 } for(i=0;i!=256;i++)if(str2[i]==1)\/\/判断数组中被str1填充的位置...
c语言:删去一维数组中所有相同的数, 使之只剩一个.求一完整正确程序
include<stdio.h>int fun(int a[],int n){ int i,j=0; for(i=1;i<n;i++) { if(a[j]!=a[i]) a[++j]=a[i]; } return j;}void main(){ int a[]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10}; int len,i; len=fun(...
C语言二维数组中删除数组中的重复元素
简单地统计重复元素和不重复元素,可以用1维数组。#include<stdio.h>void main(){int i,j,k;int a[50];int b[50],c[50];int n,flag=0;for (i=1;i<50;i++) c[i]=0;printf("Please enter 50 data\\n");for (i=0;i<50;i++) scanf("%d",&a[i]);n=0;b[n]=a[0]; c[n]=1;...
用C语言编写程序,找出用户输入的两个字符串中相同的子串,要求此输出的...
; return value;}\/\/ 利用bloomfilter算法将字符串s映射到位数组m中,并去掉重复的子串 void bloomfilter(unsigned char *m, char *s){ int i, j, hvalue, brepeat; char substr[32]; for(i = j = 0; ; i++) { if(s[i] != ' ' && s[i] !