- 1c難民22/06/20(月) 12:55:00
- 2c難民22/06/20(月) 13:00:26
char型引数aでアルファベット1文字を受け取り、大文字にして返す関数を作成するやつです
関数はchar upper(char a)固定で、小文字入力大文字出力はmainでやらなきゃいけないそうです - 3二次元好きの匿名さん22/06/20(月) 13:02:45
文字を数値として見る問題かな?
- 4c難民22/06/20(月) 13:03:17
char upper(char a) {
char s;
s = a - 32;
return s;
}
int main(void) {
printf("1文字入力してください\n");
char a[100];
scanf("%s", a);
char d[100];
d[1] = '\0';
d[0]=upper(a[0]);
printf("%sを大文字にすると%s\n", a[0], d[0]);
return 0;
}
aの入力まではできましたが「大文字にすると~」の文が表示されません。char型や大文字への変換も先週何となくでしか理解できてないと思います。 - 5c難民22/06/20(月) 13:05:57
- 6c難民22/06/20(月) 13:07:20
今回こそは完走まで保守していきたいのでよろしくお願いします
- 7二次元好きの匿名さん22/06/20(月) 13:10:50
入力するのは1文字なのに配列で宣言してるのは理由があるのかい
- 8二次元好きの匿名さん22/06/20(月) 13:12:59
stdio うろ覚えだから間違ってたらごめんだけど 1文字なら getc でよくない
小文字だけ変換したいなら 'a' <= a <='z' - 9c難民22/06/20(月) 13:17:38
- 10二次元好きの匿名さん22/06/20(月) 13:27:28
- 11二次元好きの匿名さん22/06/20(月) 13:28:24
文字の後 enter おしてる?
- 12c難民22/06/20(月) 13:34:18
- 13二次元好きの匿名さん22/06/20(月) 13:34:50
ほんとだ、%s に a[0] や d[0] を渡してるのか
- 14二次元好きの匿名さん22/06/20(月) 16:04:47
%sは文字列chra test[5]="aaa";の場合に printf("%s", test); test[0]ではなくtest
コードみたら'\0'を代入してるから知っていると思われるがそこを終了として読み取りを終える
[0]を外す理由はまだ習ってなさそうな範囲なので触れないでおく
一文字でいいならchar test = 'a'; printf("%c", test);
また配列でやるならchar test[5] = 'a'; printf("%c", test[0]);
この二つは一文字しか表示されないので文字列のように'\0'を考えなくてもよい - 15c難民22/06/20(月) 16:46:18
頑張ってみます
- 16二次元好きの匿名さん22/06/20(月) 17:28:27
すまん書き間違えた
char test[5]='a';
↓
chra test[5]="a";
また
char test[5];
test[0]='a'; - 17二次元好きの匿名さん22/06/20(月) 18:37:11
ところでスレ画はもうC++で固定なん?
初見が混乱すると思うけど - 18c難民22/06/20(月) 19:31:32
すいません!間違えました…
- 19二次元好きの匿名さん22/06/21(火) 01:12:00
もしC++スレが立ったら...
- 20二次元好きの匿名さん22/06/21(火) 09:07:56
保守
- 21c難民22/06/21(火) 10:31:10
%sを%cに変えたらできました、ありがとうございます!
- 22c難民22/06/21(火) 12:07:48
久しぶりに入力した数までの素数を表示が出てきました、復習してきます
- 23二次元好きの匿名さん22/06/21(火) 13:15:00
このレスは削除されています
- 24二次元好きの匿名さん22/06/21(火) 16:26:37
無知無知ですまんけど
printfに%sで変数渡してその変数に0が入ると表示やめちゃうんだっけ? - 25二次元好きの匿名さん22/06/21(火) 23:45:50