| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1473 人关注过本帖
标题:【求助】大家给我看看这个为什么总是不对啊!在线deng!
只看楼主 加入收藏
风之上位
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:55
专家分:156
注 册:2009-12-20
收藏
得分:0 
不支持中文汉字输出的编译器可能会出问题
2010-01-05 16:55
missiyou
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:531
专家分:218
注 册:2007-10-9
收藏
得分:0 
失误,。其实逻辑没什么问题的噢
好像没有问题
2010-01-05 16:57
风之上位
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:55
专家分:156
注 册:2009-12-20
收藏
得分:0 
只是编译器器对中文输出时出现乱码引起的吧
2010-01-05 16:58
fqtb16
Rank: 7Rank: 7Rank: 7
来 自:上海
等 级:黑侠
帖 子:96
专家分:504
注 册:2009-12-28
收藏
得分:2 
程序有问题,帮你动了动,
#include <string.h>
#include <stdio.h>
int main()
{
    int i,n,j=97;
    char s[1024]="";
    int letter[26];
    printf("please input string:");
    gets(s);
    n=strlen(s);
    for(i=0;i<26;i++)
    {
        letter[i]=0;
    }
    for(i=0;i<n;i++)
    switch(s[i])
    {
        case'a': ++letter[0];break;
        case'b': ++letter[1];break;
        case'c': ++letter[2];break;
        case'd': ++letter[3];break;
        case'e': ++letter[4];break;
        case'f': ++letter[5];break;
        case'g': ++letter[6];break;
        case'h': ++letter[7];break;
        case'i': ++letter[8];break;
        case'j': ++letter[9];break;
        case'k': ++letter[10];break;
        case'l': ++letter[11];break;
        case'm': ++letter[12];break;
        case'n': ++letter[13];break;
        case'o': ++letter[14];break;
        case'p': ++letter[15];break;
        case'q': ++letter[16];break;
        case'r': ++letter[17];break;
        case's': ++letter[18];break;
        case't': ++letter[19];break;
        case'u': ++letter[20];break;
        case'v': ++letter[21];break;
        case'w': ++letter[22];break;
        case'x': ++letter[23];break;
        case'y': ++letter[24];break;
        case'z': ++letter[25];break;   
    }
    printf("out put:\n");
    for(i=0;i<=25;i++)
    {
        printf("%d %c\n",letter[i],j);
        j++;
    }
    return 0;
}
有个转大小写代码的我给去掉了,linux环境不给支持,
你自己加下
好像是几个数组循环时越界

爱拼才会赢
2010-01-05 17:01
fqtb16
Rank: 7Rank: 7Rank: 7
来 自:上海
等 级:黑侠
帖 子:96
专家分:504
注 册:2009-12-28
收藏
得分:0 
估计是编译环境关系,
你的程序我运行结果也是错误的,字母的个数不对,还有就是乱码

爱拼才会赢
2010-01-05 17:03
钟科
Rank: 1
等 级:新手上路
帖 子:5
专家分:4
注 册:2008-11-22
收藏
得分:2 
把char letter【26】 改为Int letter【26】
2010-01-06 00:07
Alen0128
Rank: 4
等 级:业余侠客
帖 子:171
专家分:222
注 册:2009-12-26
收藏
得分:2 
你的数组输入也不对呀
for(i=0;i<=26;i++)               //这里应该是for(i=0;i<26; i++)
        letter[i]=0;

-不想让你发现我 凌乱的脚步 ,我努力 跟上你的速度
2010-01-06 09:32
zhangwai
Rank: 1
等 级:新手上路
帖 子:23
专家分:2
注 册:2010-1-6
收藏
得分:2 
谁能帮我编个程序
2010-01-06 12:58
hndkbadxv
Rank: 1
来 自:湖南
等 级:新手上路
帖 子:2
专家分:2
注 册:2010-1-7
收藏
得分:2 
++letter[0] 代码不能这样写,这个是数组中的一项,当它执行++操作的时候没有参数来存储++自增以后的值

春色满园关不住,一枝红杏出墙来。
2010-01-07 16:42
快速回复:【求助】大家给我看看这个为什么总是不对啊!在线deng!
数据加载中...
 
   



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

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