前提・実現したいこと
配列をバブルソートで小さい順に並べ替えをしたい
発生している問題・エラーメッセージ
並べ替えが全くなされていない
該当のソースコード
c言語
1#include <stdio.h> 2#include <stdlib.h> 3 4void swap(int *x, int *y); 5int main() 6{ 7 int a[7] = {17,9,18,3,12,8,15}; 8 int i,j,sorted; 9 int n = sizeof a /sizeof (a[0]) ; 10 j=n-1; 11 int k; 12 sorted = 1; 13 j = j-1; 14 for(i = 0;i<=j;i++) 15 { 16 if (a[i] > a[i+1]){ 17 swap(&a[i], &a[i+1]); 18 sorted = 0; 19 } 20 } 21 22 for (k = 0;k<n;k++) 23 { 24 printf("%d\n",a[k]); 25 } 26 27 printf("%d\n",n); 28 printf("%d\n",sorted); 29} 30 31void swap(int *x, int *y) 32{ 33 int *tmp; 34 35 tmp = x; 36 x = y; 37 y = tmp; 38}
試したこと
補足情報(FW/ツールのバージョンなど)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/22 09:23
2021/05/22 09:25