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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 葛迅 于 2013-3-27 21:30 编辑

(求ASCⅡ码对应的字符)编写程序接受一个ASCⅡ码(从0到128的整数),然后显示它所代表的
的字符。例如,如果用户输入的是97,程序显示的是字符a.

请各位大神指教 一点思路没有。           


此问题已经解决 谢谢大家

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

8 个回复

倒序浏览
本帖最后由 曹玉龙 于 2013-3-27 21:00 编辑

这个,转换下就可以了
  1. //编写程序接受一个ASCⅡ码(从0到128的整数),然后显示它所代表的
  2. //的字符。例如,如果用户输入的是97,程序显示的是字符a.
  3. class Demo
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 System.out.println((char)(97));

  8.         }
  9.         
  10. }
复制代码
还可以从键盘输入,扩展一下:
  1. import java.util.Scanner;
  2. //用键盘输入并打印到控制台,有些符号是显示不出来的
  3. public class Demo
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                 Scanner can = new Scanner(System.in);
  8.                 int a = can.nextInt();
  9.                
  10.                 if (a>=0&&a<=128)
  11.                         System.out.println((char)a);
  12.                 else
  13.                         System.out.println("输入错误,请输入0到128之间的整数");
  14.         }
  15. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
我觉得一种比较简单的思路:

首先,接受的输入是int类型的,而要求输出的是char型

于是自然想到“类型转换”的相关知识。如果想不到这点的话,再多巩固一下知识点,明确一下大的知识框架。

类型转换的一种最常见方法是(type)variable的形式。是强制转换。

如果输入一个int类型的a,那么可以用(char)a来表示它代表的字符。

写一个简单的方法如下:
  1. public static char toChar(int a) {
  2.                 //返回a所代表的字符
  3.                 return (char)a;
  4.         }
复制代码
祝共同进步!

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 胡帅冰 于 2013-3-27 21:16 编辑
  1. import java.util.*;

  2. /*
  3.    需求: 编写程序接受一个ASCⅡ码(从0到128的整数),然后显示它所代表的
  4.                     的字符。例如,如果用户输入的是97,程序显示的是字符a.
  5. */

  6. public class Change {
  7.    public static void main(String args[])
  8.    {
  9.            Scanner sc= new Scanner(System.in);   //使用Scanner 接收输入的数字
  10.             System.out.print("请输入0~128之间的整数:");
  11.               while(true) //循环接收  然后转换
  12.               {
  13.                      
  14.                       int Accept=Integer.parseInt((String)sc.next());  //转换接收的数据位int型
  15.                       if(Accept>=0&&Accept<=128)  //判断输入的是否为0~128
  16.                       {
  17.                               // 将int型的转变为char型的便可以了。输出
  18.                              System.out.println("转变之后的字符为:"+(char) Accept);
  19.                           System.out.print("请输入0~128之间的整数:");
  20.                       }
  21.                       else
  22.                       {
  23.                               //输入错误 提示。
  24.                               System.out.print("输入错误,请输入0~128之间的整数:");
  25.                       }
  26.                  
  27.               }
  28.    }
  29. }
复制代码
只要将输入的int型的数据转变为char型的便可以了,就能够显示出ASCⅡ码所代表的字符。

评分

参与人数 2技术分 +1 黑马币 +12 收起 理由
陈丽莉 + 1
葛迅 + 12 很给力!

查看全部评分

回复 使用道具 举报
王俊杰 发表于 2013-3-27 20:52
我觉得一种比较简单的思路:

首先,接受的输入是int类型的,而要求输出的是char型

哥们 你这我写的貌似不太对 我无法运行。
回复 使用道具 举报
王俊杰 发表于 2013-3-27 20:52
我觉得一种比较简单的思路:

首先,接受的输入是int类型的,而要求输出的是char型

哥们 你这写的貌似不太对 我无法运行。
回复 使用道具 举报
葛迅 发表于 2013-3-27 21:16
哥们 你这写的貌似不太对 我无法运行。

应该可以的啊。

在主方法里调用就可以了啊
回复 使用道具 举报
葛迅 中级黑马 2013-3-27 21:22:53
8#
曹玉龙 发表于 2013-3-27 20:48
这个,转换下就可以了还可以从键盘输入,扩展一下:

谢谢哥们 不过你这个程序显示的这个错误
Exception in thread "main" java.lang.Error: Unresolved compilation problem:

        at 程序练习.ClassFirst.main(ClassFirst.java:5)
回复 使用道具 举报
葛迅 中级黑马 2013-3-27 21:28:34
9#
胡帅冰 发表于 2013-3-27 21:12
只要将输入的int型的数据转变为char型的便可以了,就能够显示出ASCⅡ码所代表的字符。 ...

这个可以运行 没想到这么长 这个parseInt我还没学到 超出我的知识范围了 难怪做不出来 谢谢 辛苦了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马