01/10/2018, 12:25
Hỏi về một đoạn code trong khi làm bảng phân bố điểm của học sinh
/*
Hay nhap diem tu 1 den 100 va lam bang phan bo
*/
#include <stdio.h>
#define NUMBER 80 /* so hoc sinh toi da */
int main(void)
{
int i, j;
int num; /* So hoc sinh that su */
int diemso[NUMBER]; /* diem so cua hoc sinh */
int phanbo[11] = {0}; /* phan bo */
printf("Hay nhap so hoc sinh vao");
do {
scanf("%d", &num);
if (num < 1 || num > NUMBER)
printf("a要【1以上%d以下】:", NUMBER);
} while (num < 1 || num > NUMBER);
puts("Hay nhap diem vao");
for (i = 0; i < num; i++) {
printf(" Hoc sinh %d:", i + 1);
do {
scanf("%d", &diemso[i]);
if (diemso[i] < 0 || diemso[i] > 100)
printf("aHay nhap vao tu 1 den 100");
} while (diemso[i] < 0 || diemso[i] > 100);
phanbo[diemso[i] / 10]++;
}
puts("
□ Bang phan bo □");
printf(" 100:");
for (j = 0; j < phanbo[10]; j++)
putchar('*');
putchar('
');
for (i = 9; i >= 0; i--) {
printf("%3d - %3d:", i * 10, i * 10 + 9);
for (j = 0; j < phanbo[i]; j++)
putchar('*');
putchar('
');
}
return (0);
}
Các anh chị giải thích cho em đoạn code này được không ạ .
puts("
□ Bang phan bo □");
printf(" 100:");
for (j = 0; j < phanbo[10]; j++)
putchar('*');
putchar('
');
for (i = 9; i >= 0; i--) {
printf("%3d - %3d:", i * 10, i * 10 + 9);
for (j = 0; j < phanbo[i]; j++)
putchar('*');
putchar('
');
}
Bài liên quan
Output của đoạn code đó là gì?
Mình nghĩ output là đưa ra cái bảng phân bố điểm bằng dấu *
Kiểu như để xét xem ở cái khung điểm này thì có bao nhiêu học sinh đó.
Mong bạn chỉ giáo
Bạn thử nhập vào 1 nội dung gì đó, sau đó up cả input + output lên đây.
Bạn thử chạy trên máy tính của bạn thử xem.
Mình chỉ muốn hỏi cái nguyên lí của cái đoạn code cuối cùng.Bạn có thể giải thích cho mình không
Mình mong muốn bạn chạy code để bạn tự xem, thay vì ngồi trông đợi vào người khác.
Cái code này là nó ở trong sách á.Mà mình lại không hiểu cái nguyên lí nên mới đăng lên đây.Thanks
Bạn chỉ gõ lại code trong sách và không làm gì thêm thôi sao?
Chạy thử code, up input + output của bạn lên đây, rồi chúng ta bàn tiếp.
Mình cảm ơn bạn .Mình suy nghĩ ra rồi.Mong bạn giúp đỡ mình trong lần kế tiếp