
#include<stdio.h>
#include<stdlib.h>
int main(void){
int *pseudo_array;
int number, i;
printf("Input a positive integer:");
scanf("%d", &number);
pseudo_array=malloc(number*sizeof(int));
if(pseudo_array==NULL){
printf("Out of Memory\n");
exit(1);
}
for(i=0;i<number;i++){
printf("Input an integer for %d-th element:", i);
scanf("%d", &pseudo_array[i]);
}
printf("Set integers are\n");
for(i=0;i<number;i++){
printf("%d\n", pseudo_array[i]);
}
free(pseudo_array);
return 0;
}
上のプログラムを、「char型を要素に持つ配列のようなもの」を扱うようにし、実行後に入力した文字列を%sで表示できるようにするにはどのようにコードを書き換えれば良いのでしょうか?下のコードは雛形です。
#include<stdio.h>
#include<stdlib.h>
int main(void){
/***何か書く(適切な型)***/ *pseudo_array;
char yomisute;/***読み捨て用***/
int number, i;
printf("Input a positive integer:");
scanf("%d", &number);
scanf("%c", &yomisute);/***改行文字読み捨て***/
/*** 何か書く(領域確保と失敗時の処理) ***/
for(i=0;i<number;i++){
printf("Input a character for %d-th element:", i);
/***何か書く(キーボード入力文字を格納)***/
scanf("%c", &yomisute);/***改行文字読み捨て***/
}
/***何か書く***/
printf("Set string are %s\n", pseudo_array);
/***何か書く(領域解放)***/
return 0;
}
No.1ベストアンサー
- 回答日時:
#include<stdio.h>
#include<stdlib.h>
int main(void){
/***何か書く(適切な型)***/ char *pseudo_array;
char yomisute;/***読み捨て用***/
int number, i;
printf("Input a positive integer:");
scanf("%d", &number);
scanf("%c", &yomisute);/***改行文字読み捨て***/
/*** 何か書く(領域確保と失敗時の処理) ***/
pseudo_array = malloc((number + 1) * sizeof(char));
if (pseudo_array == NULL) {
printf("Out of Memory\n");
return EXIT_FAILURE;
}
for(i=0;i<number;i++){
printf("Input a character for %d-th element:", i);
/***何か書く(キーボード入力文字を格納)***/
scanf("%s", &pseudo_array[i]);
scanf("%c", &yomisute);/***改行文字読み捨て***/
}
/***何か書く***/
pseudo_array[i] = '\0';
printf("Set string are %s\n", pseudo_array);
/***何か書く(領域解放)***/
free(pseudo_array);
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミング C言語 課題でプ...
-
10個出力で改行したいのですが...
-
LU分解法のピボット選択機能実...
-
既約分数の表示プログラム
-
すごろくに使用するサイコロ
-
C言語の&に関する質問
-
C言語の勉強しています。すみま...
-
入力したお金の金額からお札の...
-
CTRL+Dでループを抜けるには
-
C言語でマウス入力(クリックや...
-
printfの変換仕様について
-
文字と数字の判定について
-
*を使ったジグザグのラインをプ...
-
cshの文字列操作(0埋め)
-
ピラミッド表示プログラム。
-
円の面積を求めるプログラミン...
-
パスカルの三角形についてのCプ...
-
%P と %X の違い
-
C言語 文字列の比較 compare
-
defineで定数が置き換えられな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
コンパイルエラーについて
-
c言語でAからZまでを表示する...
-
コマンドプロンプトがすぐ消える
-
C言語の勉強しています。すみま...
-
テキストカーソル位置の取得
-
【C言語教えてください】sin波...
-
コマンドラインに出力した文字...
-
三角形の判別
-
(C言語)めちゃくちゃな値にな...
-
cshの文字列操作(0埋め)
-
scanfに文字が入力されたときに...
-
入力したお金の金額からお札の...
-
unsigned int型について
-
8人分のテストの点数を入力し、...
-
プログラミングについて質問で...
-
LU分解法のピボット選択機能実...
-
勝率をプログラムに
-
CTRL+Dでループを抜けるには
-
C言語
おすすめ情報