| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 412 人关注过本帖
标题:编译代码没错运行起来总乱码
只看楼主 加入收藏
h2682057
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2014-10-20
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
编译代码没错运行起来总乱码
刚入门新手,网上找了好久解决方法都没什么结果,说是排列规则问题,新手入门求大神耐心讲解 不胜感激。
#include<stdio.h>
#include<stdlib.h>
int main()
{
    char card_name[3];
      puts("输入牌名:");
      scanf("%2s", card_name);
    int val = 0;
      if (card_name[0] == 'K') {
      val = 10;
      } else if (card_name[0] == 'Q') {
      val = 10;
      } else if (card_name[0] == 'J') {
      val = 10;
      } else if (card_name[0] == 'A') {
      val = 11;
      } else {
      val == atoi(card_name);
      }
      printf("这张牌的点数是:%i\n",val);
      return 0;
}
搜索更多相关主题的帖子: 不胜感激 include 网上 
2014-10-20 16:35
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:15 
如果你的代码只是读取牌名 输出数 应该是下面这个样子

程序代码:
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
    char card_name[3];
    puts("输入牌名:");
    scanf("%s", card_name);
    int val = 0;
    if (card_name[0] == 'K') {
        val = 10;
    } else if (card_name[0] == 'Q') {
        val = 10;
    } else if (card_name[0] == 'J') {
        val = 10;
    } else if (card_name[0] == 'A') {
        val = 11;
    } else {
        val = atoi(card_name);
    }
    printf("这张牌的点数是:%i\n", val);
    return 0;
}


不过我不大喜欢打牌 不知道这个A是不是11

如果要提高这个程序的话 考虑采用switch重写
2014-10-20 19:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 2 楼 zklhp
纸牌的A是1,J才是11。

授人以渔,不授人以鱼。
2014-10-20 19:11
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用TonyDeng在2014-10-20 19:11:18的发言:

纸牌的A是1,J才是11。

他的代码里面J Q K都是10 不知道有什么用意
2014-10-20 19:12
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
他是如果牌是那些,就给val赋值为10。

授人以渔,不授人以鱼。
2014-10-20 19:13
h2682057
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2014-10-20
收藏
得分:0 
回复 2 楼 zklhp
其实是参考书里面的一些题  引用的比较粗略 主要是锻炼书写格式和自查错误的。。。那些J Q K额。。不必在意。。我试试去 灰常感谢!
2014-10-21 14:17
h2682057
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2014-10-20
收藏
得分:0 
回复 3 楼 TonyDeng
J Q K只是个形式。。。这是个参考书里面的练习题  主要是练习书写格式,和自测书写能力的。我用Notepad++在win8平台下写的。以前一些代码没有乱码现象。只有这个乱码了! 感谢回帖!
2014-10-21 14:22
h2682057
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2014-10-20
收藏
得分:0 
回复 2 楼 zklhp
win8 平台下 Notepad++ 重写之后运行已然乱码。。。纠结了
2014-10-21 14:30
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用h2682057在2014-10-21 14:30:26的发言:

win8 平台下 Notepad++ 重写之后运行已然乱码。。。纠结了

编码问题

Win的命令提示符对字符集的支持非常差
2014-10-21 17:22
快速回复:编译代码没错运行起来总乱码
数据加载中...
 
   



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

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