โปรแกรมหาค่าตัวเลขมากที่สุด2อันดับ และน้อยที่สุด 2 อันดับ จากเลข 7 ตัวที่เราป้อน
#include <stdio.h>
main()
{
int num[7] , temp;
int i , j ;
printf(" ใส่เลข (ตัวอย่าง 1 2 3 4 5 6 7 ) : ");
for (i=0;i<7;i++)
scanf("%d", &num [ i ] );
for (i=0;i<6;i++) <<< ผมเข้าใจว่าเป็นการลูปเพื่อตรวจเชคค่าแต่ละช่อง array
for (j=0;j<6;j++) <<< ลูปที่2 ผมเข้าใจว่าเป็นการเปรียบเทียบแต่ละarrayเพื่อเปลี่ยนลำดับ
if (num[ j ]> num[ j+1 ] ) <<<<
{
temp=num[ j ]; ช่วงนี้คือการทำงานที่ผมไม่เข้าใจ
num[ j ] =num [ j+1 ];
num [ j +1 ] = temp; >>>>
}
printf(" เลขมากสุดอันดับ1 %d\n",num[6]);
printf(" เลขมากสุดอันดับ2 %d\n",num[5]);
printf(" เลขน้อยสุดอันดับ1 %d\n",num[0]);
printf(" เลขน้อยสุดอันดับ2 %d\n",num[1]);
}
เมื่อผมรันโปรแกรมแล้วโปรแกรมสามารถทำงานได้ตามตัวอย่าง
รบกวนด้วยครับ ขอภัยมือใหม่ครับ
สวัสดีครับ ผมกำลังศึกษาภาษา Cด้วยตนเองอยู่ครับพอดีผมไม่เข้าใจการทำงานของโปรแกรมนี้ในหนังสือ
#include <stdio.h>
main()
{
int num[7] , temp;
int i , j ;
printf(" ใส่เลข (ตัวอย่าง 1 2 3 4 5 6 7 ) : ");
for (i=0;i<7;i++)
scanf("%d", &num [ i ] );
for (i=0;i<6;i++) <<< ผมเข้าใจว่าเป็นการลูปเพื่อตรวจเชคค่าแต่ละช่อง array
for (j=0;j<6;j++) <<< ลูปที่2 ผมเข้าใจว่าเป็นการเปรียบเทียบแต่ละarrayเพื่อเปลี่ยนลำดับ
if (num[ j ]> num[ j+1 ] ) <<<<
{
temp=num[ j ]; ช่วงนี้คือการทำงานที่ผมไม่เข้าใจ
num[ j ] =num [ j+1 ];
num [ j +1 ] = temp; >>>>
}
printf(" เลขมากสุดอันดับ1 %d\n",num[6]);
printf(" เลขมากสุดอันดับ2 %d\n",num[5]);
printf(" เลขน้อยสุดอันดับ1 %d\n",num[0]);
printf(" เลขน้อยสุดอันดับ2 %d\n",num[1]);
}
เมื่อผมรันโปรแกรมแล้วโปรแกรมสามารถทำงานได้ตามตัวอย่าง
รบกวนด้วยครับ ขอภัยมือใหม่ครับ