Bubble sort in C language using function

Data Structure Sorting (Article) Sorting (Program)

5129

Program:

<span class="com">/* Bubble sort in C language using function 
By atnyla Developer
*/</span><span class="pln">


</span><span class="com">#include</span><span class="pln"> </span><span class="str">&lt;stdio.h&gt;</span><span class="pln">
 
</span><span class="kwd">void</span><span class="pln"> bubble_sort</span><span class="pun">(</span><span class="kwd">long</span><span class="pln"> </span><span class="pun">[],</span><span class="pln"> </span><span class="kwd">long</span><span class="pun">);</span><span class="pln">
 
</span><span class="kwd">int</span><span class="pln"> main</span><span class="pun">()</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">long</span><span class="pln"> array</span><span class="pun">[</span><span class="lit">100</span><span class="pun">],</span><span class="pln"> n</span><span class="pun">,</span><span class="pln"> c</span><span class="pun">,</span><span class="pln"> d</span><span class="pun">,</span><span class="pln"> swap</span><span class="pun">;</span><span class="pln">
 
  printf</span><span class="pun">(</span><span class="str">"Enter number of elements\n"</span><span class="pun">);</span><span class="pln">
  scanf</span><span class="pun">(</span><span class="str">"%ld"</span><span class="pun">,</span><span class="pln"> </span><span class="pun">&amp;</span><span class="pln">n</span><span class="pun">);</span><span class="pln">
 
  printf</span><span class="pun">(</span><span class="str">"Enter %ld integers\n"</span><span class="pun">,</span><span class="pln"> n</span><span class="pun">);</span><span class="pln">
 
  </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln">c </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln"> c </span><span class="pun">&lt;</span><span class="pln"> n</span><span class="pun">;</span><span class="pln"> c</span><span class="pun">++)</span><span class="pln">
    scanf</span><span class="pun">(</span><span class="str">"%ld"</span><span class="pun">,</span><span class="pln"> </span><span class="pun">&amp;</span><span class="pln">array</span><span class="pun">[</span><span class="pln">c</span><span class="pun">]);</span><span class="pln">
 
  bubble_sort</span><span class="pun">(</span><span class="pln">array</span><span class="pun">,</span><span class="pln"> n</span><span class="pun">);</span><span class="pln">
 
  printf</span><span class="pun">(</span><span class="str">"Sorted list in ascending order:\n"</span><span class="pun">);</span><span class="pln">
 
  </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> c </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">;</span><span class="pln"> c </span><span class="pun">&lt;</span><span class="pln"> n </span><span class="pun">;</span><span class="pln"> c</span><span class="pun">++</span><span class="pln"> </span><span class="pun">)</span><span class="pln">
     printf</span><span class="pun">(</span><span class="str">"%ld\n"</span><span class="pun">,</span><span class="pln"> array</span><span class="pun">[</span><span class="pln">c</span><span class="pun">]);</span><span class="pln">
 
  </span><span class="kwd">return</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
 
</span><span class="kwd">void</span><span class="pln"> bubble_sort</span><span class="pun">(</span><span class="kwd">long</span><span class="pln"> list</span><span class="pun">[],</span><span class="pln"> </span><span class="kwd">long</span><span class="pln"> n</span><span class="pun">)</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">long</span><span class="pln"> c</span><span class="pun">,</span><span class="pln"> d</span><span class="pun">,</span><span class="pln"> t</span><span class="pun">;</span><span class="pln">
 
  </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln">c </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">;</span><span class="pln"> c </span><span class="pun">&lt;</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> n </span><span class="pun">-</span><span class="pln"> </span><span class="lit">1</span><span class="pln"> </span><span class="pun">);</span><span class="pln"> c</span><span class="pun">++)</span><span class="pln">
  </span><span class="pun">{</span><span class="pln">
    </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="pln">d </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">;</span><span class="pln"> d </span><span class="pun">&lt;</span><span class="pln"> n </span><span class="pun">-</span><span class="pln"> c </span><span class="pun">-</span><span class="pln"> </span><span class="lit">1</span><span class="pun">;</span><span class="pln"> d</span><span class="pun">++)</span><span class="pln">
    </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">]</span><span class="pln"> </span><span class="pun">&gt;</span><span class="pln"> list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">+</span><span class="lit">1</span><span class="pun">])</span><span class="pln">
      </span><span class="pun">{</span><span class="pln">
        </span><span class="com">/* Swapping */</span><span class="pln">
 
        t         </span><span class="pun">=</span><span class="pln"> list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">];</span><span class="pln">
        list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">]</span><span class="pln">   </span><span class="pun">=</span><span class="pln"> list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">+</span><span class="lit">1</span><span class="pun">];</span><span class="pln">
        list</span><span class="pun">[</span><span class="pln">d</span><span class="pun">+</span><span class="lit">1</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> t</span><span class="pun">;</span><span class="pln">
      </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
</span><span class="pun">}</span>

Output:

Enter number of elements
7
Enter 7 integers
8
7
6
5
4
3
2
Sorted list in ascending order:
2
3
4
5
6
7
8
Press any key to continue . . .

Explanation:

Bubble sort in C language using function

This Particular section is dedicated to Programs only. If you want learn more about Data Structure. Then you can visit below links to get more depth on this subject.