| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1254 人关注过本帖
标题:书上例子看不懂,请教各位大哥与版主,不然我今晚睡不着~~
只看楼主 加入收藏
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
 问题点数:0 回复次数:18 
书上例子看不懂,请教各位大哥与版主,不然我今晚睡不着~~
书上有个例是这样的:

学生成绩分业(85分上为‘A’等,70~84分为'B',60~69分为'C';
他用的是switch语句:

switch(grade)
{
case'A' :printf("85~100\n");break:
case'B' :printf("70~84\n");break:
case'C' :printf("60~69\n");break:
case'D' :printf("<60\n");break:
dfaule;printf("error\n")
}


我想请问一下,这里的'A'是什么?不会是字符吧?那就是对应的ASSCII码咯?应该不会啊,'A'的ASSCII码才65,我就郁闷了,这语句上面是不是应该有说明'A'里面的值为85-100这样?

搜索更多相关主题的帖子: 版主 例子 
2006-10-05 21:43
以后每天来这里
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2006-9-6
收藏
得分:0 
如果grade=A,那么输出A那条
是B,输出B那条
依次类推

2006-10-05 22:06
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 

这个例子应该这么表述才有意义吧..
#include<stdio.h>
int main()
{
int grade;
scanf("%d",&grade);
if(grade<60)
grade=4;
else if(grade>=85&&grade<=100)
grade=1;
else if(grade>=70&&grade<=84)
grade=2;
else if(grade>=60&&grade<=69)
grade=3;
switch (grade)
{
case 1:printf("A\n");break;
case 2:printf("B\n");break;
case 3:printf("C\n");break;
case 4:printf("D\n");break;
default:printf("error!!"); break;

}
return 0;
}


unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-10-05 22:06
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 

写的有点麻烦哈,呵呵,这样简单点吧
#include<stdio.h>
int main()
{
int grade;
scanf("%d",&grade);
if(grade<60)
grade=6;
else grade=(grade+5)/10;
switch (grade)
{
case 10:
case 9:printf("A\n");break;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("error!!"); break;

}
return 0;
}


unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-10-05 22:15
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用钩魂天蝎在2006-10-5 21:43:50的发言:
书上有个例是这样的:

学生成绩分业(85分上为‘A’等,70~84分为'B',60~69分为'C';
他用的是switch语句:

switch(grade)
{
case'A' :printf("85~100\n");break:
case'B' :printf("70~84\n");break:
case'C' :printf("60~69\n");break:
case'D' :printf("<60\n");break:
dfaule;printf("error\n")
}


我想请问一下,这里的'A'是什么?不会是字符吧?那就是对应的ASSCII码咯?应该不会啊,'A'的ASSCII码才65,我就郁闷了,这语句上面是不是应该有说明'A'里面的值为85-100这样?

按你的说法就是输入grade的值(A,B,C,D).打印对应的分数段,输入别的字符则输出错误.
按正常的来说该是判断输入的分数的等级.就是楼上说的.


倚天照海花无数,流水高山心自知。
2006-10-05 23:06
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
收藏
得分:0 
'A'就是是字符

有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2006-10-05 23:18
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
得分:0 

谢谢大家指导。。。。明白意思了。。。谢谢unicorn这位大哥,,,其实你第一个例我还好看懂,,第二个反而有点看不懂了~~~

#include<stdio.h>
int main()
{
int grade;
scanf("%d",&grade);
if(grade<60)
grade=6;
else grade=(grade+5)/10; \*这里是什么意思*\
switch (grade)
{
case 10:
case 9:printf("A\n");break;
case 8:printf("B\n");break; \*这里的7,8,9,10怎么得来的*\
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("error!!"); break;

}
return 0;\*这又是什么,可能还没学到*\
}

2006-10-05 23:32
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
收藏
得分:0 
以下是引用钩魂天蝎在2006-10-5 23:32:02的发言:

谢谢大家指导。。。。明白意思了。。。谢谢unicorn这位大哥,,,其实你第一个例我还好看懂,,第二个反而有点看不懂了~~~

#include<stdio.h>
int main()
{
int grade;
scanf("%d",&grade);
if(grade<60)
grade=6;
else grade=(grade+5)/10; \*这里是什么意思*\除以10取十位
switch (grade)
{
case 10:
case 9:printf("A\n");break;
case 8:printf("B\n");break; \*这里的7,8,9,10怎么得来的*\通过grade=(grade+5)/10来的
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("error!!"); break;

}
return 0;\*这又是什么,可能还没学到*\用c++不用写返回不过要void main()
}


" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-05 23:50
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
处在85以上为A,所以 (grade+5)/10>8表示所有grade大于等于85的.
以下类推.
两种格式:
int main()
{
...
return(0);//正常结束
}

void main()
{
...
}

倚天照海花无数,流水高山心自知。
2006-10-06 16:44
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 

Mr. honkerman 解释的很清楚了


unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-10-06 20:38
快速回复:书上例子看不懂,请教各位大哥与版主,不然我今晚睡不着~~
数据加载中...
 
   



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

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