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

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

ただいまの
回答率

90.48%

  • C

    3834questions

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

c言語 バブルソートのソースコード解説

受付中

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 955

yusuke001

score 8

この下に記載されてるc言語のバブルソートのコードがよく分かりません
誰か教えて下さい。
バブルソートについては分かりますが肝心なc言語のバブルソートの、ソースコードがどうなってるか
分からないので誰か詳しく教えてもらえませんかね?
よろしくお願いします!!!

ソーソコード↓
int main(void)

int data[N], target;
int i,j,work;
int low, high, middle;
/数値入力/
printf("10個の数値を入力してください。¥n");
for (i=0;i scanf("%d",&data[i]);
/*整列/*
for(i=0;i for(j=N-2;j>=i;j--){
if( data[j]>data[j+1]){
work = data[j];
data[j]= data[j+1];
data[j+1]=work;



/整列済みの数値を入力/
for(i=0;i<N;i++)
printf("%d",data[i]);
printf("¥n");
/数値探索/
while(1){
printf("探索対象数値を入力してください¥n");
scanf("%d",&target);
if(target < 0)
break;
low=0;
high =N-1;
while(low<= high){
middle = (low + high) /2;
if( data [middle]== target  )
break;
else if (data[middle]< target)
low = middle +1  ;
else
high = middle -1;

if( low >high )
printf("見つかりませんでした¥n");
else
printf("見つかりました¥n");

return 0;

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

0

まずプログラムがおかしいですよ。

以下の部分を見直してください。
for(i=0;i for(j=N-2;j>=i;j--){ 

また、かなり初歩的なプログラムなので、これで分からないとなると・・・。
具体的、どこがどうわからないのか教えてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

バブルソートがわからないということなので
バブルソートのところだけ

/*整列*/
// 比較範囲の中で一番小さい値が一番若い添えじになったら比較範囲を1つ狭くする
for(i=0;i<N-1;i++){
 // 比較範囲を添え字の大きい方から比較して一番小さい値をi番目にする
 for(j=N-2;j>=i;j--){ 
  // 添え字の若いほうが大きかったら入れ替え(値の小さいほうをi番目に近くする)
  if( data[j]>data[j+1]){ 
   work = data[j]; 
   data[j]= data[j+1]; 
   data[j+1]=work; 
  } 
 }
}

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

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

  • ただいまの回答率 90.48%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    [C言語]コマンド文字列検索をしたいです。おそらくアルゴリズムです。

    txtファイルに入ってる文字列から、コマンドで入力された文字を検索してその文字が入ってる行番号も一緒に返したいです。 しかしバグがあって、検索できない文字列があったり、検索した文字

  • 解決済

    素数判定[C言語]

    ある整数を与えて、素数かどうか判定するというプログラムを作ったのですが、コンパイル出来て実行してみたところ、プログラムが停止してしまいました。 ミスの場所を教えてください。解説もあ

  • 受付中

    c言語 バブルソートのソースコードが分かりません

    c言語、バブルソートについて c言語のバブルソートは分かるのですが肝心の バブルソートを実行する処理のソースコードが分かりません 下に記載してるので、バブルソート処理を分かりやすく

  • 受付中

    点数別分布グラフ

    点数分布のグラフですが、少し長いように感じました。もう少し短くすることはできますか? またこのコードに対して何かご意見がありましたらお願いします。 #inc

  • 解決済

    カスタム投稿のカスタムフィールドの検索について

    wordpressの検索についてです。 http://kotori-blog.com/wordpress/refinement_search/#refinement10_1 ↑こち

  • 解決済

    Enumの使い方

    プログラム中にあるマジックナンバーを理解できる形に直そうと思いEnumを使おうとしているのですが、Enumの使い方がわかりません。 例えばプログラムで if (sum >= 50)

  • 解決済

    【C言語】スタックをリストで実現するプログラム

    毎度お世話になっております。 高橋麻奈さんの「やさしいC アルゴリズム」をみて勉強しているのですが、リストを使ったスタックのコードで、がコンパイルエラーになってしまいました。 コ

  • 解決済

    コードを見てダメ出しや指摘などお願いします。

    #include <stdio.h> int main(void){     double a;     double b;        char o;  //演算子    

同じタグがついた質問を見る

  • C

    3834questions

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