| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 618 人关注过本帖
标题:这个程序错在哪里?初学者虚心请教.
只看楼主 加入收藏
zc13792229
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2007-4-5
收藏
 问题点数:0 回复次数:7 
这个程序错在哪里?初学者虚心请教.
题目是:输入一个百分制的学生成绩,然后把它转换成相应的'A','B','C','D','E'五个等级输出.其中90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60以下的为'E'.
以给出一个程序,叫我们改错
程序如下:
#include<stdio.h>
main()
{
float score;
char grade;
print("please input a student's score:");
scanf("%f",score);
if(score>100||score<0)
{
printf("\n input error,try again!");
scanf("%f",score);
}
switch(score/10)
{
case 10:
case 9:grade='A';break;
case 8:grade='B';break;
case 7:grade='C';break;
case 6:grade='D';break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:grade='E';break;
}
printf("score is %5.1f,score grade is %c\n",score,grade);
}


因为是初学者,所以改不完全,这个程序我已经修改过,不知道还有哪些地方不对,还请大家帮忙看一下
谢谢啊
搜索更多相关主题的帖子: score 虚心 
2007-04-05 17:52
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
收藏
得分:0 
以下是引用zc13792229在2007-4-5 17:52:01的发言:
题目是:输入一个百分制的学生成绩,然后把它转换成相应的'A','B','C','D','E'五个等级输出.其中90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60以下的为'E'.
以给出一个程序,叫我们改错
程序如下:
#include<stdio.h>
main()
{
float score;
char grade;
printf("please input a student's score:");
scanf("%f",&score);
if(score>100||score<0)
{
printf("\n input error,try again!");
scanf("%f",&score);
}
switch(score/10)
{
case 10:
case 9:grade='A';break;
case 8:grade='B';break;
case 7:grade='C';break;
case 6:grade='D';break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:grade='E';break;
}
printf("score is %5.1f,score grade is %c\n",score,grade);
}


因为是初学者,所以改不完全,这个程序我已经修改过,不知道还有哪些地方不对,还请大家帮忙看一下
谢谢啊

细心~```


 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-04-05 18:06
zc13792229
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2007-4-5
收藏
得分:0 

哦,谢咯谢咯
就是有点粗心
呵呵

2007-04-05 19:57
wchx215
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2006-9-4
收藏
得分:0 
回复:(zc13792229)这个程序错在哪里?初学者虚心请教...
#include<stdio.h>
main()
{
float score;
char grade;
print("please input a student's score:");
scanf("%f",&score);
while(score>100||score<0) //保证输入的分数是正确的
{
printf("\n input error,try again!");
scanf("%f",&score);
}
switch(score/10)
{
case 10:
case 9:grade='A';break;
case 8:grade='B';break;
case 7:grade='C';break;
case 6:grade='D';break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:grade='E';break;
}
printf("score is %5.1f,score grade is %c\n",score,grade);
}
2007-04-05 20:31
zc13792229
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2007-4-5
收藏
得分:0 
谢谢谢谢
2007-04-05 20:50
circlesky
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2007-4-5
收藏
得分:0 
这个问题很典型,我发现很多初学者是这个问题!
2007-04-05 21:26
darenwu12345
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-4-6
收藏
得分:0 
注意switch(a)中a只能为int   enum   char

To Be or Not To Be!!!!!!
2007-04-06 19:49
快速回复:这个程序错在哪里?初学者虚心请教.
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019677 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved