A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ay_zhong 中级黑马   /  2014-5-10 15:30  /  2376 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1  Objective-C for Windows 集成实验环境初体验  http://bbs.itheima.com/thread-115933-1-1.html
2  OC学习笔记(一)-我的第一个OC程序   http://bbs.itheima.com/thread-117130-1-1.html
3  OC学习笔记(二)-基本数据类型  http://bbs.itheima.com/thread-117187-1-1.html
4  OC学习笔记(三)-表达式 http://bbs.itheima.com/thread-117197-1-1.html
5  OC学习笔记(四.一) 选择结构if语句 http://bbs.itheima.com/thread-117424-1-1.html


OC学习笔记(四.二) 选择结构switch语句

    在switch(...)中输入条件表达式,根据条件表达式的结果寻找对应的case语句来执行。这里要注意的是如果case块中没有break时,那么会顺序继续执行下一个case块。如果没有匹配的case块,那么我们可以使用default块来接收例外的情况。整体的switch语句可以看做是if-else if-else语句的变体。

     将if-else if 实现百分成绩转换成A、B、C、D、E、F 修改成用switch语句实现




2 个回复

倒序浏览
本帖最后由 ay_zhong 于 2014-5-10 15:37 编辑

用if-else if实现代码

  1. #import <Foundation/Foundation.h>   
  2. int main(int argc, const char * argv[])  
  3. {        
  4.      @autoreleasepool
  5.      {            
  6.          //在此处输入Objective-C代码  
  7.         int score;
  8.             char level;         
  9.             NSLog(@"Please input your score(Full mark is 100):");
  10.             scanf("%i",&score);        
  11.             if(score>100)
  12.         {
  13.                NSLog(@"Invalid score!");return 0;
  14.             }else if(90<=score && score<=100)  {level='A';}
  15.             else if(80<=score && score<90)     {level='B';}
  16.             else if(70<=score && score<80)     {level='C';}
  17.             else if(60<=score && score<70)     {level='D';}
  18.             else if(0<=score && score<60)      {level='F';}
  19.             else
  20.         {
  21.                NSLog(@"Invalid score!");return 0;
  22.             }         
  23.             NSLog(@"Your level is %c",level);         
  24.      }  
  25.      return 0;  
  26. }
复制代码




回复 使用道具 举报
用switch实现代码

  1. #import <Foundation/Foundation.h>   
  2. int main(int argc, const char * argv[])  
  3. {        
  4.      @autoreleasepool
  5.      {            
  6.          //在此处输入Objective-C代码  
  7.         int score;
  8.             char level;        
  9.             NSLog(@"Please input your score(Full mark is 100):");
  10.             scanf("%i",&score);                    
  11.             if(score>100 ||score<0)
  12.         {
  13.                NSLog(@"Invalid score!");return 0;
  14.         }
  15.         score=score /10;
  16.         switch(score)
  17.         {  
  18.                 case 10:
  19.                 case 9:
  20.                      level='A';
  21.                      break;
  22.                 case 8:
  23.                      level='B';
  24.                      break;
  25.                    case 7:
  26.                      level='C';
  27.                      break;
  28.                   case 6:
  29.                      level='E';
  30.                      break;
  31.                 case 5:
  32.                 case 4:
  33.                 case 3:
  34.                 case 2:
  35.                 case 1:
  36.                 case 0:
  37.                        level='F';  
  38.                        break;
  39.             }        
  40.             NSLog(@"Your level is %c",level);         
  41.      }  
  42.      return 0;  
  43. }
复制代码




回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马