6つの塩基(A、T、G、C)を入力して、それを一列に並べるというものなのですが、うまくいかないので、質問させていただきます。
#include<stdio.h>
main()
{
char b1,b2,b3,b4,b5,b6;
printf("6つの塩基を入力してください。\n");
printf("1つ目の塩基は?\n");
b1=getchar();
printf("2つ目の塩基は?\n");
b2=getchar();
printf("3つ目の塩基は?\n");
b3=getchar();
printf("4つ目の塩基は?\n");
b4=getchar();
printf("5つ目の塩基は?\n");
b5=getchar();
printf("6つ目の塩基は?\n");
b6=getchar();
printf("配列は%c%c%c%c%c%cです。\n",b1,b2,b3,b4,b5,b6);
}
こうすると実行したときに
b1=
b2=b3=
b4=b5=となってうまく実行できないんですが、どうしたらよいのでしょうか?
ちなみに「getcharと変数とprintfとscanfを使う」と問題の条件に書いてあるので、これだけで作れという問題ですが・・・
No.4ベストアンサー
- 回答日時:
#include <stdio.h>
int
main(void)
{
char b[7], d;
int i, c;
printf("6つの塩基を入力してください。\n");
for (i = 0; i < 6;) {
printf("%dつ目の塩基は?[ATGC] >> ", i + 1);
c = getchar();
scanf("%c",&d);
switch (c) {
case 'A':
case 'T':
case 'G':
case 'C':
b[i++] = c;
}
}
b[6] = 0;
printf("配列は%s\n", b);
return 0;
}
No.2
- 回答日時:
「XX=getchar();」部分をループ(while)して、
入力待ち状態にすればよいのではないでしょう。
while(c=getchar() != EOF){
if c='A'・・・・・{
b1=c;
berak;
}
}
こんな感じで。(そのままはNGなので、修正してください)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# char string[100]; int c, i=0; while( (c=getchar()) 2 2022/05/30 21:41
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# C言語(構造体) 3 2022/07/05 20:08
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# 至急教えてください! プログラミングの問題です! お願いします! 出力2と全く同じ出力をするように、 2 2022/06/22 23:10
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
printfの出力内の文字をdefine...
-
C言語
-
分数を表示するプログラム(長...
-
答えを教えてください
-
【C】fizzbuzzのトリッキーなコ...
-
2進数の加算の繰り上がり
-
C言語での、年複利の計算方法...
-
C言語で、「自然数nを入力し、n...
-
5×5の転置行列を求めるC言語の...
-
ガウスの消去法、後退代入について
-
CTRL+Dでループを抜けるには
-
srand(time(NULL))の使い方
-
switch分のケースを範囲数?に...
-
error C2143: 構文エラー : ';'...
-
printf("%lf",5/3); は 0.00000...
-
C言語での数字の花形表示
-
空Enterの扱い方
-
三平方の定理を求めるプログラム
-
コマンドプロンプトがすぐ消える
-
printf で二進表示を行いたい。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
【C言語教えてください】sin波...
-
printf で二進表示を行いたい。
-
c言語でAからZまでを表示する...
-
コマンドラインに出力した文字...
-
strcmp
-
4の倍数を論理演算で表す。。
-
scanfに文字が入力されたときに...
-
C言語での、年複利の計算方法...
-
C言語 プログラミング
-
hit&bolwのプログラミングがで...
-
%P と %X の違い
-
unsigned int型について
-
printf( " %2d", p * q );
-
cshの文字列操作(0埋め)
-
改行について 1行に何個かづ...
-
8人分のテストの点数を入力し、...
-
入力したお金の金額からお札の...
-
三角形の判別
-
テキストカーソル位置の取得
おすすめ情報