c语言检查错误!要讲明白那里错了,还有因为什么原理错了!(高分)
分时拿来奖赏的!好答案会加分!学习更重要,学好了不挂科啊!我是学计算机软件的具体题目!(很简单的题目,不要其他答案,我要改正了我的那些的答案)才行!题目如下:餐饮服务质量...
分时拿来奖赏的!好答案会加分!学习更重要,学好了不挂科啊!
我是学计算机软件的
具体题目!(很简单的题目,不要其他答案,我要改正了我的那些的答案)才行!题目如下:
餐饮服务质量调查打分
顾客对餐饮服务打分。编程:输入被邀请来给自助餐厅的食品和服务质量打分的10个学生给出的分数,分数有1~5这5个数值(1表示最低分,5表示最高分),计算调查结果,并用*打印出如下形式的统计结果直方图。
Grade Count Histogram
1 5 *****
2 10 **********
3 7 *******
我写的那些代码!
#include<stdio.h>
void main()
{
int i,j,k=0,l=0,grade[10],count[6],a;
char histogram[5];
for(i=0;i<10;i++)
{ a=i;
printf("\nPlease input the NO.%d student's score(1-5):",i+1);
scanf("%d",&grade[i]); //用for输入每个 分数
for(j=1;j<6;j++)
{ //判断是否满足1-5 下面一样
if(grade[i]==j)
{
count[j]=count[j]+1; //记录每一个分数的次数 下面一样
break;
}
else
{
printf("input error,please input NO.%d score again",i);
i=a;count[j]=0;
break;
}
}
}
printf("\nGrade Count Histogram\n");
for(i=1;i<6;i++)
{
printf("\n%-10d%-10d",i,count[i]);
j=count[i];
for(j=0;j<count[i];j++)
printf("*");
printf("\n");
}
getch();
}
是大虾就放马过来吧!随便抢分!
在线等啊!!!!!!!! 展开
我是学计算机软件的
具体题目!(很简单的题目,不要其他答案,我要改正了我的那些的答案)才行!题目如下:
餐饮服务质量调查打分
顾客对餐饮服务打分。编程:输入被邀请来给自助餐厅的食品和服务质量打分的10个学生给出的分数,分数有1~5这5个数值(1表示最低分,5表示最高分),计算调查结果,并用*打印出如下形式的统计结果直方图。
Grade Count Histogram
1 5 *****
2 10 **********
3 7 *******
我写的那些代码!
#include<stdio.h>
void main()
{
int i,j,k=0,l=0,grade[10],count[6],a;
char histogram[5];
for(i=0;i<10;i++)
{ a=i;
printf("\nPlease input the NO.%d student's score(1-5):",i+1);
scanf("%d",&grade[i]); //用for输入每个 分数
for(j=1;j<6;j++)
{ //判断是否满足1-5 下面一样
if(grade[i]==j)
{
count[j]=count[j]+1; //记录每一个分数的次数 下面一样
break;
}
else
{
printf("input error,please input NO.%d score again",i);
i=a;count[j]=0;
break;
}
}
}
printf("\nGrade Count Histogram\n");
for(i=1;i<6;i++)
{
printf("\n%-10d%-10d",i,count[i]);
j=count[i];
for(j=0;j<count[i];j++)
printf("*");
printf("\n");
}
getch();
}
是大虾就放马过来吧!随便抢分!
在线等啊!!!!!!!! 展开
1个回答
展开全部
修改好的程序:
#include<stdio.h>
#include <conio.h>
void main()
{
int i,j,k=0,l=0,grade[10],count[6],a;
char histogram[5];
for( j=1; j<6; j++ ) count[j] = 0;
for(i=0;i<10;i++)
{ a=i;
printf("\nPlease input the NO.%d student's score(1-5):",i+1);
scanf("%d",&grade[i]); //用for输入每个 分数
if( grade[i] < 1 || grade[i] > 5 ) {
printf( "grade should be in range: 1-5\n" );
i = a;
continue;
}
count[ grade[i] ] ++;
}
printf("\nGrade Count Histogram\n");
for(i=1;i<6;i++)
{
printf("\n%-10d%-10d",i,count[i]);
j=count[i];
for(j=0;j<count[i];j++)
printf("*");
printf("\n");
}
getch();
}
程序中有getch应该包含#include <conio.h>
修改的话,
1.在用户输入之前, 先执行:
for( j=1; j<6; j++ ) count[j] = 0;
2.在用户输入之后,
scanf("%d",&grade[i]); //用for输入每个 分数
的下面:
if( grade[i] < 1 || grade[i] > 5 ) {
printf( "grade should be in range: 1-5\n" );
i = a;
continue;
}
主要问题: count没有初始化
for( j=1; j<6; j++ ) count[j] = 0;
(一般会用数组的0-4)
同时判断分数是否有效,不需要一个循环,直接判断是否在1-5之内就行了,不在,让用户重输,
在的话,直接 count[ grade[j] ] ++;
#include<stdio.h>
#include <conio.h>
void main()
{
int i,j,k=0,l=0,grade[10],count[6],a;
char histogram[5];
for( j=1; j<6; j++ ) count[j] = 0;
for(i=0;i<10;i++)
{ a=i;
printf("\nPlease input the NO.%d student's score(1-5):",i+1);
scanf("%d",&grade[i]); //用for输入每个 分数
if( grade[i] < 1 || grade[i] > 5 ) {
printf( "grade should be in range: 1-5\n" );
i = a;
continue;
}
count[ grade[i] ] ++;
}
printf("\nGrade Count Histogram\n");
for(i=1;i<6;i++)
{
printf("\n%-10d%-10d",i,count[i]);
j=count[i];
for(j=0;j<count[i];j++)
printf("*");
printf("\n");
}
getch();
}
程序中有getch应该包含#include <conio.h>
修改的话,
1.在用户输入之前, 先执行:
for( j=1; j<6; j++ ) count[j] = 0;
2.在用户输入之后,
scanf("%d",&grade[i]); //用for输入每个 分数
的下面:
if( grade[i] < 1 || grade[i] > 5 ) {
printf( "grade should be in range: 1-5\n" );
i = a;
continue;
}
主要问题: count没有初始化
for( j=1; j<6; j++ ) count[j] = 0;
(一般会用数组的0-4)
同时判断分数是否有效,不需要一个循环,直接判断是否在1-5之内就行了,不在,让用户重输,
在的话,直接 count[ grade[j] ] ++;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询