猿问

这个代码我有几句看不懂,希望大神帮我解释一下(题目是输入学生的分数并显示分布情况)

#include <stdio.h>

#define NUMBER 80  //人数上限

int main(void)
{
	int i, j;
	int num;//实际人数
	int score[NUMBER];//学生分数
	int fenbu[11] = {0};//分布图

	printf("请输入学生人数: ");
	do {
		scanf("%d", &num);
		if (num < 1 || num > NUMBER)
			printf("\a人数范围[1 to %d]: ",	NUMBER);
	} while (num < 1 || num > NUMBER);

	puts("请输入学生的分数:");
	for (i = 0; i < num; i++) {
		printf("No.%2d: ", i + 1);
		do {
			scanf("%d", &score[i]);
			if (score[i] < 0 || score[i] > 100)
				printf("\a分数范围[1 to 100]: ");
		} while (score[i] < 0 || score[i] > 100);
		fenbu[score[i] / 10]++;    /*这句我看不懂*/
	}

	puts("\n ★分布图★");
	printf("      100: ");
	for (j = 0; j < fenbu[10];j++); /*这句也是,我看不懂*/
		putchar('*');
	putchar('\n');

	for (i = 9; i >= 0; i--) {
		printf("%3d - %3d: ", i * 10, i * 10 + 9);
		for (j = 0; j < fenbu[i]; j++)/*还有这一句,我不懂*/
			putchar('*');
		putchar('\n');
	}

	return 0;
}


叫什么名字好呢1
浏览 1439回答 2
2回答

KXFT

你的看不懂的都是一个问题,就拿fengbu[i]来举例,fengbu[i]代表的是fengbu这个数组第i+1个数的值,这个i可以是score[i] / 10,
随时随地看视频慕课网APP
我要回答