01/10/2018, 00:01
Cho mình xin ý kiến về vòng lặp for với
#include<stdio.h>
#include<stdlib.h>
int main(int argc,char *argv[])
{
int kichthuocmang=4;
int arrayi[4]={3,7,6,5};
for(int i=0;i<kichthuocmang-1;i++)
{
for(int j=i+1;j<kichthuocmang;j++)
{
if(arrayi[i]>arrayi[j])
{
int k=arrayi[i];
arrayi[i]=arrayi[j];
arrayi[j]=k;
}
}
}//lan 1 i=0 thì
for(int i=0;i<kichthuocmang;i++)
{
printf("%d,",arrayi[i]);
}
}
//o bai code nay e khong hieu tu 7-18,lan thu 1 e nghi la no cho i=0 roi so sanh voi j=1.--> kq3,7,6,5
//lan 2 no so sanh i=1 va j=2;-->kq 3,6,7,5
//lan 3 no so sanh i=2 va j=3-->kq 3.6.5 ,7
//vay tai sao man hinh lai hien thi 3.5.6.7
Bài liên quan
bạn có thể in ra trạng thái mảng sau vòng lặp của j để xem sự thay đổi xem có đúng như bạn nghĩ không
Cái này là kết quả cuối cùng khi chạy hết dòng for i mà.
Còn em muốn coi sự thay đổi của mảng đó như thế nào ?
Thì em cứ hết dòng for j thì in cái mạng đó ra để xem.
Chịu khó chạy debug đi em.