C言語-決まった文字数を打ち込むと、その偶数番目のアルファベットだけを出力する
決まった文字数ぶんだけ入力すると、その偶数番目の文字だけを返すプログラム
配列を使いたくなるが、ここは誰もが苦手にするポインターを使う。まずポインタを宣言し、それに10文字格納。そして先頭アドレスから数えて偶数番目の要素を取り出すようにする。
コード
#include <stdio.h> int main(void) { char *even; //ポインター宣言 int i; printf("10文字の英字を入力してください\n"); scanf("%s",even); for(i=1;i<=10;i+=2) { //偶数番目だけを指定する printf("%c ", *(even+i)); //先頭アドレスから数えて偶数番目だけを出力 } return 0; }
こんな感じになった
$ gcc pointer-even-string.c -o pointer-even-string $ ./pointer-even-string 10文字の英字を入力してください iwateken w t k n
今度は文字数を指定しない方法を試したい