以下のC言語のプログラムを教えてください。 お願いします。
(1)標準入力から文字列(2 文字以上)を入力し,文字数を計上すると共に,入力された文
字列の逆順に入れ替える処理を実現せよ.なお,以下の要件を満たしたプログラムを作
成すること.
・ 入力された文字列は,char 型の配列(要素数50)で受け取ること
・ 文字数を計上するcount 関数(引数:配列のアドレス,戻り値:文字数)を定義
し,main 関数より呼び出すこと
・ 文字列を逆順に入れ替えるreverse 関数(引数:配列のアドレス,戻り値:無し)
を定義し,main 関数より呼び出すこと
・ 標準出力の処理は,main 関数で記述すること
【プロトタイプ宣言】
int count(char *str);
void reverse(char *str);
【実行結果】
文字列を入力してください(2 文字以上)
apple
文字数 = 5
入れ換え前
apple
入れ換え後
elppa
$
----------------------------------------------------------------------------
(2)char 型の配列(要素数50)を2 つ宣言し,標準入力から2 つの文字列を入力せよ.
そして,格納した字列を入れ替える関数(swapstr 関数)を作成し,入れ替え前と入れ替
え後の配列内の値(文字列)を配列名とともに標準出力するプログラムを作成せよ.
【プロトタイプ宣言】
void swapstr(char *str1, char *str2);
【実行結果】
2 つの文字列を入力してください
apple
strawberry
入れ換え前
配列str1 = apple
配列str2 = strawberry
入れ換え後
配列str1 = strawberry
配列str2 = apple
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
関数嫌いだから、関数化は任せるw。
#include<stdio.h>
#define N 50
int main(){
char a[N];
char b[N];
int i,j;
printf("文字列を入力してください(2 文字以上)\n");
scanf("%s",&a);
i=0;
while(a[i]!='\0'){
i++;
}
printf("文字数 =%d\n",i);
printf("入れ換え前\n%s\n",a);
for(j=0;j<i;j++){
b[j]=a[i-j-1];
}
b[j]='\0';
printf("入れ換え後\n%s\n",b);
}
#include<stdio.h>
#define N 50
int main(){
char a[N];
char b[N];
char c;
int i;
printf("2 つの文字列を入力してください\n");
scanf("%s",&a);
scanf("%s",&b);
printf("入れ換え前\n");
printf("str1=%s\n",a);
printf("str2=%s\n",b);
for(i=0;i<50;i++){
c=a[i];
a[i]=b[i];
b[i]=c;
}
printf("入れ換え後\n");
printf("str1=%s\n",a);
printf("str2=%s\n",b);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Java Java 南京錠 2 2023/02/04 11:46
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 配列の長さの上限
-
テキストファイルから文字列を...
-
配列を使わずに、変数名を動的...
-
Excel、VBAのユーザーフォーム...
-
配列で格納したものをmsgboxで...
-
先頭アドレスとは何ですか?
-
Visual C++で配列を動的に確保...
-
複数のボタンを配列で扱う方法...
-
C言語 変換指定%sについてです。
-
unsigned char配列への入力の仕方
-
VB.NETでテキストボックスをコ...
-
擬似コード 長さがmの配列でな...
-
【速いブラインドタッチ】手を...
-
RGB値を画像(PNG・BMPJPEGなど)...
-
C言語でcharの足し算
-
メモリの初期値
-
複数の選択範囲の行番号を個別...
-
【C言語】配列の中に配列を入れ...
-
VB.NET 構造体の配列の検索機能...
-
配列内の文字間を排他的論理和...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 配列の長さの上限
-
配列を使わずに、変数名を動的...
-
先頭アドレスとは何ですか?
-
配列で格納したものをmsgboxで...
-
C# 配列の変数宣言について。
-
テキストファイルから文字列を...
-
unsigned char配列への入力の仕方
-
ExcelVBAで質問です。離れた二...
-
配列の参照渡しで型が一致しま...
-
パイソンの
-
C# Listを使わずに2次元配列の...
-
C言語で特定列だけを抽出して配...
-
複数の選択範囲の行番号を個別...
-
【C言語】配列の中に配列を入れ...
-
メモリの初期値
-
VBで構造体の配列を関数に渡す...
-
Excel、VBAのユーザーフォーム...
-
2次元配列を戻り値とする関数?
-
配列をEraseしてもメモリが開放...
-
【速いブラインドタッチ】手を...
おすすめ情報