黑马程序员技术交流社区

标题: 怎样改变大小写? [打印本页]

作者: WANGJIAO    时间: 2014-10-20 12:52
标题: 怎样改变大小写?
我做练习时遇到的小问题,输入一个整数,输出对应的星期几,比如1,就输出星期一,可是我这么写输出的是星期1啊,怎么才能把阿拉伯数字变成大写的?(7以上的就先不管了)
printf("请输入整数\n")  ;
int day = 0;
scanf("%d",&day);
printf("星期%d\n",day);





作者: 崔石炫    时间: 2014-10-20 16:01

  1. #import <Foundation/Foundation.h>

  2. int main(int argc, const char * argv[])
  3. {
  4.     char *days[7] = {"一" , "二" , "三" , "四" , "五" , "六" , "日"};
  5.     int day = 0;
  6.     printf("请输入整数\n");
  7.     scanf("%d" , &day);
  8.    
  9.     printf("星期%s\n" , days[day-1]);
  10.    
  11.    
  12.     return 0;
  13. }
复制代码

作者: WANGJIAO    时间: 2014-10-20 16:07
崔石炫 发表于 2014-10-20 16:01

能讲解下吗?这是基本运算里的题怎么会用到指针和数组啊
作者: 崔石炫    时间: 2014-10-20 16:19
WANGJIAO 发表于 2014-10-20 16:07
能讲解下吗?这是基本运算里的题怎么会用到指针和数组啊
  1. #import <Foundation/Foundation.h>

  2. int main(int argc, const char * argv[])
  3. {
  4.     char *days[7] = {"一" , "二" , "三" , "四" , "五" , "六" , "日"};
  5.     /*
  6.      定义一个指针数组days,包含7个指针,每个指针都是指向字符串的,分别指向"一" , "二" , "三" , "四" , "五" , "六" , "日"这7个字符串
  7.      */
  8.     int day = 0; //保存键盘输入的整数的变量day,后面用作指针数组的下标
  9.     printf("请输入整数\n");
  10.     scanf("%d" , &day);
  11.    
  12.     printf("星期%s\n" , days[day-1]); //将对应的字符串连接到"星期"后面,得到“星期一”这样的字符串
  13.    
  14.     /*
  15.      char a = 'c';
  16.      char b = a - 'a' + 'A';
  17.      这样可以将小写字母'c'转换成大写字符'C',要把数字转换成汉字,只能用字符串的。
  18.      */
  19.    
  20.    
  21.     return 0;
  22. }
复制代码

作者: LeeWong    时间: 2014-10-20 16:33
崔石炫 发表于 2014-10-20 16:01

这个方法不错 mark
作者: breaking1800    时间: 2014-10-20 17:04
这个方法好
作者: WANGJIAO    时间: 2014-10-20 19:52
崔石炫 发表于 2014-10-20 16:19

谢谢~非常好的方法!
作者: coyote    时间: 2014-10-20 22:25
这个看着挺高大上  也可以用switch 就是感觉有点低端




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2