| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2988 人关注过本帖
标题:删除ASCII码为奇数的字符
只看楼主 加入收藏
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
结帖率:90.32%
收藏
已结贴  问题点数:10 回复次数:5 
删除ASCII码为奇数的字符
#include<stdio.h>
#include<string.h>
void fun(char *s,char t[])
{
    int  i,j,k=0;
    j=strlen(s);
    for(i=0;i<j;i++)
        if('s[i]'%2==0)
        {t[k]=s[i];
        k++;
        }
}
void main()
{
    char s[100],t[100];
    printf("\nPlease enter string S:");
    scanf("%s",s);
    fun(s,t);
    printf("\nThe result is:%s\n",t);
}


输入字符串删除ASCII码为奇数的字符,再输出剩下,求高手指正
搜索更多相关主题的帖子: include 
2013-06-18 23:31
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:0 
程序代码:
#include<stdio.h>
#include<string.h>
void fun(char *s,char t[])
{
    int  i,j,k=0;
    j=strlen(s);
    for(i=0;i<j;i++)
        if(s[i]%2==0)//把这里改为这样!! 
        {t[k]=s[i];
        k++;
        }
}
int main(void)
{
    char s[100],t[100];
    printf("\nPlease enter string S:");
    scanf("%s",s);
    fun(s,t);
    printf("\nThe result is:%s\n",t);
}

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-06-19 07:25
飞跃的乌龟
Rank: 2
等 级:论坛游民
帖 子:96
专家分:18
注 册:2012-10-20
收藏
得分:0 
回复 2楼 我叫沃恩
出来一些汉字,不行
2013-06-19 08:55
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:5 
#include<stdio.h>
#include<string.h>
void fun(char *s,char t[100])
{
    int  i,j,k=0;
    j=strlen(s);
    for(i=0;i<j;i++)
        if(s[i]%2==0)   //这里的两个单引号去掉
        {t[k]=s[i];
        k++;
        }
    t[k]='\0';        //这里一定要给t加上一个结束标志,不然会输出“烫烫烫烫烫烫烫。。。。。”
}
void main()
{
    char s[100],t[100];
    printf("\nPlease enter string S:");
    scanf("%s",s);
    fun(s,t);
    printf("\nThe result is:%s\n",t);
}

三十年河东,三十年河西,莫欺少年穷!
2013-06-19 09:31
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
收藏
得分:4 
你这不叫删除,充其量就是把需要的结果赋值给了另一个数组。

这是在你的代码上改进的:
程序代码:
#include<stdio.h>
#include<string.h> 


void fun(char str[])
{
    int  i,L,k=0;
    L=strlen(str);
    for(i=0;i<L+1;i++)
    {
        if(str[i]%2==1)
        {
            int j=i;
           
            do
            {
                str[j]=str[j+1];
                j++;
            }while(str[j]!='\0');
           
            L--;
        }
    }
}

int main()
{
    char s[100];
    printf("Please enter string S:");
    scanf("%s",s);
    fun(s);
    printf("The result is:%s\n",s);
   
    return 0;
}
运行结果:
图片附件: 游客没有浏览图片的权限,请 登录注册



Edsger Dijkstra:算法+数据结构=程序
2013-06-19 10:04
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:1 
回复 3楼 飞跃的乌龟
在我这没问题啊!可能是我的编译器的过,,,

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-06-19 21:14
快速回复:删除ASCII码为奇数的字符
数据加载中...
 
   



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

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