标题:为什么我输入1而输出的是输入错误而不是JANUARY???
只看楼主
QQ329956247
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2011-11-30
结帖率:100%
 问题点数:0 回复次数:2 
为什么我输入1而输出的是输入错误而不是JANUARY???
#include <stdio.h>
#include <stdlib.h>

int main()
{int i,*p;
 scanf("%d",&i);
 p=&i;
 switch (*p)
 {case'1':printf("January");break;
  case'2':printf("February");break;
  case'3':printf("March");break;
  case'4':printf("April");break;
  case'5':printf("May");break;
  case'6':printf("June");break;
  case'7':printf("July");break;
  case'8':printf("August");break;
  case'9':printf("September");break;
  case'10':printf("October");break;
  case'11':printf("November");break;
  case'12':printf("December");break;
  default:printf("输入错误");
 }return 0;
}
为什么我输入1而输出的是输入错误而不是JANUARY
搜索更多相关主题的帖子: include 
2011-12-16 18:33
hhp1314521
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2011-12-15
得分:0 
不要用单引号,有单引号就表示字符了,可以改为  case 1: printf("....");break;
2011-12-16 18:52
墨清扬
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:294
专家分:817
注 册:2011-10-4
得分:0 
楼上正解~按理来说编译到case'10'的时候应该会有警告啊,单引号里面不是一个字符

酱油实习生
2011-12-16 18:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-357929-1-1.html




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

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