标题:刚才写错了
只看楼主
舞动
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-7-25
 问题点数:0 回复次数:3 
刚才写错了
#include<stdio.h>
void main()
{
    int c;
    while((c=getchar())!='\n')
    {
        switch(c-2)
        {
                case 0:
                case 1:putchar(c+4);
            case 2:putchar(c+4);break;
            case 3:putchar(c+3);
            default:putchar(c+2);break;
        }
    }
    printf("\n");
}
输入332254
输出结果为什么是554476

#include<stdio.h>
void main()
{
    int c;
    while((c=getchar())!='\n')
    {
        switch(c-‘2’)
        {
                case 0:
                case 1:putchar(c+4);
            case 2:putchar(c+4);break;
            case 3:putchar(c+3);
            default:putchar(c+2);break;
        }
    }
    printf("\n");
}
输入332254
输出结果是77776666878
分别怎么来的
搜索更多相关主题的帖子: case putchar switch void int 
2008-03-09 09:32
hylhp
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2008-2-27
得分:0 
2和'2'不一样.2就是2,'2'是ACD码
2008-03-09 09:49
wubizao
Rank: 1
来 自:荆州长大电信
等 级:新手上路
帖 子:223
专家分:0
注 册:2006-6-24
得分:0 
'3'-2 == 51 - 2 == 49 第一个程序,直接到defalut标签
'3'-'2' == 1...

在路上走,看见了C,从此爱上了她
2008-03-09 10:12
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
字符与整型数据进行运算时,会先将字符转换为其相应的ASCII码后再进行运算,比如'2'-2,会先将'2'转换为相应的ASCII码50,再进行运算,结果就是48

雁无留踪之意,水无取影之心
2008-03-09 10:31



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




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

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