| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2406 人关注过本帖
标题:怎样用switch语句做下面问题?
只看楼主 加入收藏
吉诺比利
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-28
收藏
 问题点数:0 回复次数:18 
怎样用switch语句做下面问题?
给出一百分制成绩,要求输出成绩等级‘A’,‘B’,‘C’,‘D’,‘E’。90分以上为‘A',80至89为‘B’,70至79为‘C’60至69为‘D’,60分以下为‘E’。
请教怎样用switch语句编个程序来实现上面问题?
搜索更多相关主题的帖子: 语句 switch 
2008-11-16 19:47
hecs1988
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-27
收藏
得分:0 
switch貌似只能跟具体数值,int类型的,不能跟判断语句。。。我从网上找的。新手回复。。呵呵答错了可别笑我啊。我用了以下的语句都不可以:#include<stdio.h>
void main()
{
    int score;
    puts("请输入分数:");
    scanf("%d",&score);
    printf("\n");
    switch (score)
    {
    case (score>=90?1:0):
    put('a');
    break;
    case ((score>=80&&score<90)?1:0):
    put('b');
    break;
    case ((score>=70&&score<80)?1:0):
    put('c');
    break;
    case ((score>=60&&score<70)?1:0):
    put('d');
    break;
    case (score<60?1:0):
    put('e');
    break;
    default:
    puts("输入错误");
    break;
    }
}
2008-11-16 20:39
风居住的街道
Rank: 1
等 级:新手上路
帖 子:374
专家分:0
注 册:2008-10-24
收藏
得分:0 
知道不可以还贴……
2008-11-16 20:42
hlmzrdongdong
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖北武汉
等 级:版主
威 望:1
帖 子:99
专家分:145
注 册:2008-10-24
收藏
得分:0 
回复 1# 的帖子
在谭浩强版的《C语言程序设计》上这个题目是个例子,有源码在上面,查查就知道。
2008-11-16 20:44
嬿·嘄·骊·戨
Rank: 2
来 自:天府之国
等 级:论坛游民
帖 子:84
专家分:25
注 册:2008-10-16
收藏
得分:0 
我有一个想放法``等等``
2008-11-16 20:48
嬿·嘄·骊·戨
Rank: 2
来 自:天府之国
等 级:论坛游民
帖 子:84
专家分:25
注 册:2008-10-16
收藏
得分:0 
#include<stdio.h>

int main(void)
{
   int fenshu ;

   if ( scanf("%d",&fenshu)!=1 || fenshu<0 || fenshu >100 )
      return -1 ;

   putchar( ( fenshu < 60  ) ? 'E' :  ( (99-fenshu)/10 + 'A' ) ) ;

   return 0 ;
}


哈哈``我想法不错吧``还没有调试过哦`

不好意思``懂不起``switch语句是啥子意思``

我只晓得点输入输出和条件```循环和其他语句``下来再看``

[[it] 本帖最后由 嬿·嘄·骊·戨 于 2008-11-18 16:47 编辑 [/it]]
2008-11-16 21:02
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1687
专家分:4253
注 册:2007-12-27
收藏
得分:0 
太太太幽默了

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2008-11-16 21:16
cyz7929
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2008-10-26
收藏
得分:0 
#include<stdio.h>
main()
{ int n,t;
 printf("Input the score:");
 scanf("%d",&n);
 printf("\n");
 if(n==100)
 printf("A");
 else
  {if(0<=n&&n<60)t=5;
 else t=n/10;
  switch(t)
 {case  9:printf("A");break;
  case  8:printf("B");break;
  case  7:printf("C");break;
  case  6:printf("D");break;
  case  5:printf("E");break;
  default:printf("error");
  }}}
2008-11-16 21:18
嬿·嘄·骊·戨
Rank: 2
来 自:天府之国
等 级:论坛游民
帖 子:84
专家分:25
注 册:2008-10-16
收藏
得分:0 
幽默说勒是我蔓

[[it] 本帖最后由 嬿·嘄·骊·戨 于 2008-11-16 17:36 编辑 [/it]]
2008-11-16 21:35
tangname
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2008-11-12
收藏
得分:0 
#include "stdio.h"
#define G guade
#define B break;
void main()
{
int score,logic=1,temp;
char guade;

while(logic)
{
printf("请输入数字:");
scanf("%d",&score);
if(score>100||score<0)
printf("输入错误,请重新输入:");
else logic=0;
printf("\n");
}

if(score==100)
temp=9;
else
temp=score/10;
switch(temp)
{
case 9:G='A';B
case 8:G='B';B
case 7:G='C';B
case 6:G='D';B
case 4:
case 3:
case 2:
case 1:
case 0:G='E';B
}
printf("分数是:%d,等级是:%c.",score,G);
}
2008-11-16 22:30
快速回复:怎样用switch语句做下面问题?
数据加载中...
 
   



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

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