求详细分析C语言题:餐饮服务质量调查打分(题和答案在下)
求详细分析:如果答案里能标注理解更好。在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,...
求详细分析:如果答案里能标注理解更好。
在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,比较一下各月份的销售收入状况。如果仅给出一大堆数据,这显然太不直观了,如果能将这些数据以条形图(直方图)的形式表示,将会大大增加这些数据的直观性,也便于数据的分析与对比。下面以顾客对餐饮服务打分为例,练习这方面的程序编写方法。假设有40个学生被邀请来给自助餐厅的食品和服务质量打分,分数划分为1~10这10个等级(1表示最低分,10表示最高分),试统计调查结果,并用*打印出如下形式的统计结果直方图。
Grade Count Histogram
1 5 *****
2 10 **********
3 7 *******
答案#include <stdio.h>
#include <stdlib.h>
void print_star(int n)
{
int i;
for(i=1;i<=n;++i)
printf("*");
}
main()
{
int i,j,t;
int count[11]={0,0,0,0,0,0,0,0,0,0,0};
int score[40]={2,2,2,2,3,3,5,4,5,4,8,7,10,2,2,2,2,3,3,5,4,5,4,8,7,1,2,2,2,2,3,3,5,4,5,4,8,7,1,9};
for(i=0;i<40;++i)
{
switch(score[i])
{
case 1:count[1]+=1;break;
case 2:count[2]+=2;break;
case 3:count[3]+=3;break;
case 4:count[4]+=4;break;
case 5:count[5]+=5;break;
case 6:count[6]+=6;break;
case 7:count[7]+=7;break;
case 8:count[8]+=8;break;
case 9:count[9]+=9;break;
case 10:count[10]+=10;break;
default:printf("the %2dth score is out of range!\n",i+1);
}
}
printf("Grade Count Histograme\n");
for(i=1;i<=10;++i)
{
printf("%2d%5d\t",i,count[i]);
print_star(count[i]);
printf("\n");
}
system("pause");
} 展开
在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,比较一下各月份的销售收入状况。如果仅给出一大堆数据,这显然太不直观了,如果能将这些数据以条形图(直方图)的形式表示,将会大大增加这些数据的直观性,也便于数据的分析与对比。下面以顾客对餐饮服务打分为例,练习这方面的程序编写方法。假设有40个学生被邀请来给自助餐厅的食品和服务质量打分,分数划分为1~10这10个等级(1表示最低分,10表示最高分),试统计调查结果,并用*打印出如下形式的统计结果直方图。
Grade Count Histogram
1 5 *****
2 10 **********
3 7 *******
答案#include <stdio.h>
#include <stdlib.h>
void print_star(int n)
{
int i;
for(i=1;i<=n;++i)
printf("*");
}
main()
{
int i,j,t;
int count[11]={0,0,0,0,0,0,0,0,0,0,0};
int score[40]={2,2,2,2,3,3,5,4,5,4,8,7,10,2,2,2,2,3,3,5,4,5,4,8,7,1,2,2,2,2,3,3,5,4,5,4,8,7,1,9};
for(i=0;i<40;++i)
{
switch(score[i])
{
case 1:count[1]+=1;break;
case 2:count[2]+=2;break;
case 3:count[3]+=3;break;
case 4:count[4]+=4;break;
case 5:count[5]+=5;break;
case 6:count[6]+=6;break;
case 7:count[7]+=7;break;
case 8:count[8]+=8;break;
case 9:count[9]+=9;break;
case 10:count[10]+=10;break;
default:printf("the %2dth score is out of range!\n",i+1);
}
}
printf("Grade Count Histograme\n");
for(i=1;i<=10;++i)
{
printf("%2d%5d\t",i,count[i]);
print_star(count[i]);
printf("\n");
}
system("pause");
} 展开
1个回答
展开全部
#include <stdio.h>
#include <stdlib.h>
/*
* 打印n个*
**/
void print_star(int n)
{
int i;
for(i=1;i<=n;++i) //循环n次
printf("*"); //打印*
}
/*
* 主函数
**/
int main()
{
int i;
int count[11]={0,0,0,0,0,0,0,0,0,0,0}; //声明并初始化统计数组
int score[40]={2,2,2,2,3,3,5,4,5,4,8,7,10,2,2,2,2,3,3,5,4,5,4,8,7,1,2,2,2,2,3,3,5,4,5,4,8,7,1,9}; //成绩
for(i=0;i<40;++i) //循环遍历成绩数组
{
switch(score[i])//判断成绩值,并统计成绩
{
case 1:count[1]+=1;break;
case 2:count[2]+=1;break;
case 3:count[3]+=1;break;
case 4:count[4]+=1;break;
case 5:count[5]+=1;break;
case 6:count[6]+=1;break;
case 7:count[7]+=1;break;
case 8:count[8]+=1;break;
case 9:count[9]+=1;break;
case 10:count[10]+=1;break;
default:printf("the %2dth score is out of range!\n",i+1);
}
}
printf("Grade Count Histograme\n");
for(i=1;i<=10;++i)//循环遍历统计数组
{
printf("%2d%5d\t",i,count[i]);//打印grade和count
print_star(count[i]); //调用函数打印*直方图
printf("\n"); //打印回车
}
system("pause");
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询