質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

2回答

1201閲覧

配列aとbに共通する文字列

kitaka

総合スコア12

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2019/06/16 12:44

コード ```#include<stdio.h> #define NUMBER_A 3 #define NUMBER_B 4 int compare(char p[],char q[]){ while(*p!='\0'||*q!='\0'){ if(*p++!=*q++) return 0; } return 1; } int main(void){ char a[NUMBER_A][8]={"red","green","blue"}; char b[NUMBER_B][8]={"green","yellow","red","purple"}; int i,j; for(i=0;i<NUMBER_A;i++){ for(j=0;j<NUMBER_B;j++){ if(compare(⓵,⓶)==⓷) printf("%s\n",⓵); } } return 0; } 配列aとbに共通して含まれる文字列をすべて表示するプログラム 空欄⓵~⓷を埋めてください

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

まず,printfで使われている①に着目すると,そこでは結果の文字列を表示せねばならないと思われるので,

  • ① : a[i]

とします.
すると,①はcompare()の引数にも使われているので,そこから②を考えます.
compare()の中を見ると,whileの条件的に,2つの引数には長さが同一の文字列を入れないとやばそうですから,どうにかしてそのことに対応する形の②を考える必要があります.
①と長さが同じ文字列として手っ取り早いのは,①そのものを使うことでしょう.よって,

  • ② : a[i]

とします.これで,compare()の戻り値は1になると思います.
この状態で,③をどうすべきかを考えると,例えば,

  • ③ : ( strcmp(a[i],b[j])==0 ? 1 : 0 )

のようにすれば良さそうに見えます.

投稿2019/06/17 04:48

fana

総合スコア11656

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

空欄を埋めても正しいプログラムになりません。

投稿2019/06/16 12:54

Zuishin

総合スコア28660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

majiponi

2019/06/17 12:08 編集

それはどうして? 埋めても姿勢が変わらないと正しいプログラマにならないのは分かるけど。
Zuishin

2019/06/18 23:28 編集

一度書いたコメントの趣旨を変えないでください。それを受けて書いた私のコメントが意味不明になります。include でシンタックスエラーが出るはずです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問