2016-04-04 13 views
-6

与えられた文字列から連続する同じ文字をすべて削除したかったのですか?コンパイル時にエラーが表示されるのはなぜですか?

#include <stdio.h> 
#include <stdio.h> 

int main() 
{ 
char str1[10],str2[10]; 
int n,i=0,j=0,z=1,k=0; 
scanf("%d",&n); 
for(i=0;i<n;i++){ 
    gets(str1); 
    str2[0]=str1[0]; 
    for(j=1;str1[j]!='\0';j++){ 
     if(str1[j]==str1[j-1]) 
      continue; 
     else 
      str2[z]=str1[j]; 
     z++; 
} 
for(k=0;str2[k]!='\0';k++) 
     printf("%s\n",str2[k]); 
} 
return 0; 
} 
+2

あなたはどのようなエラーを得ていますか?この '#include#include'はファイルの先頭に何かありますか? – RyanP

+0

これはCコードのようです。 C++としてコンパイルする場合は、タグを変更しますが、関連のない別の言語のタグは追加しないでください。 – Olaf

答えて

1
printf("%s\n",str2[k]); 

STR2 [k]はCHARですが、あなたはそれがchar *

である。しかし、このプログラムがまだ正常に動作しませんprintfの教え - (取得する最初の呼び出しは)ちょうど読みます最初のint値を読み込んだ後に入力キューに残っているキャリッジリターン。そして、あなたは決してstr2をヌル終了しません。

関連する問題