Cかjavaで
"abcdefgh"
の文字列から奇数の文字列を抽出するにはどうすればいいでしょうか?
"aceg"
といったふうにしたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答4件
0
どこまで考えてどこでわからないのでしょう?
あまりに基本的な問題過ぎて、それくらい検索すればいくらでも出てくるだろうというのが本音です。
ループで1文字ずつ取り出していって、奇数番目のときだけ出力とか変数に追記していけばよいかと思います。
投稿2015/06/04 14:47
総合スコア962
0
ベストアンサー
~/test cat he.c
#include <stdio.h>
int main()
{
char *str= "abcdefg";
char out[128];
//
int pos= 0;
for( int i= 0; *str; i++ ){
if(( i & 1 ) == 0){
out[pos++]= *str;
}
str++;
}
out[pos]= '\0';
//
puts(out);
return 0;
}
~/test ./a.out
aceg
~/test
if(( i & 1 ) == 0)をif(( i & 1 ) == 1)にすれば偶数番目になります。
投稿2015/06/04 20:56
総合スコア6851
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
久々のCですが。。。
lang
1#include <stdio.h> 2#include <string.h> 3int main() 4{ 5 char *str="abcdefg"; 6 char out_str[256]; 7 int i,j; 8 9 memset( out_str, '\0', sizeof( out_str ) ); 10 11 j=0; 12 for( i=0; *str != '\0'; i+=2 ) { 13 out_str[j] = *str; 14 j++; str++; 15 } 16 17 printf("%s\n", out_str ); 18 19 return 0; 20}
投稿2015/06/04 15:11
総合スコア129
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
奇数番目の文字を取り出すということでしょうか?
lang
1public static void main(String args[]){ 2 String str = "abcdefgh"; 3 StringBuilder result = new StringBuilder(); 4 //インデックスは0からスタートするので,奇数番目の文字は偶数のインデックスになる 5 for(int i = 0; i < str.length(); i += 2){ 6 result.append(str.charAt(i)); 7 } 8 System.out.println(result); 9}
投稿2015/06/04 14:37
総合スコア20651
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。