成绩分布图
/*输入学生的分数并显示出分布情况
*/
#include <stdio.h>
#define NUMBER 80 // 人数上限
int main(void)
{
int i, j;
int num; // 实际的人数
int tensu; // 学生的分数
int bunpu = {0}; // 分布图
printf("请输入学生人数:");
do {
scanf("%d", &num);
if (num < 1 || num > NUMBER)
printf("\a人数范围 :", NUMBER);
} while (num < 1 || num > NUMBER);
puts("请输入学生的分数。");
for (i = 0; i < num; i++) {
printf("%2d号:", i + 1);
do {
scanf("%d", &tensu);
if (tensu < 0 || tensu > 100)
printf("\a分数范围:");
} while (tensu < 0 || tensu > 100) ;
bunpu / 10]++;
}
puts("\n----分布图----");
printf(" 100:");
for (j = 0; j < bunpu; j++)
putchar('*');
putchar('\n');
for (i = 9; i >= 0; i--) {
printf("%3d - %3d:", i * 10, i * 10 + 9);
for (j = 0; j < bunpu; j++)
putchar('*');
putchar('\n');
}
return (0);
}
输出结果
对于打印分布图的语句for (j = 0; j < bunpu; j++) 中的j<bunpu;不理解,已bunpu为判断条件
bunpu中存的不是星的次数吗? 你写的代码在我这里测试时有错误的。你这个编程题目是什么?直接给个代码我是没办法回答的{:10_247:}
页:
[1]