| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 14450 人关注过本帖, 1 人收藏
标题:编写函数fun,其功能是删除一个字符串中的所有空格
只看楼主 加入收藏
staradonis
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-2-18
结帖率:0
收藏(1)
已结贴  问题点数:20 回复次数:10 
编写函数fun,其功能是删除一个字符串中的所有空格
8. 编写函数fun,其功能是删除一个字符串中的所有空格。例如,输入字符串“ This is a string”,则应输出“ Thisisastring”。
文件PROG.C中的内容如下:
#include<conio.h>
#include<stdio.h>
#include<string.h>
char *fun(char *str)
{
}
void main()
{
char s[81],*ds;
printf(“\nPlease enter a string:”);
gets(s);
ds=fun(s);
pritnf(“\nResult:%s\n”,ds);
}
搜索更多相关主题的帖子: 字符串 
2011-02-18 11:24
『点点滴滴』
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:168
专家分:1035
注 册:2007-7-9
收藏
得分:3 
#include<conio.h>
#include<stdio.h>
#include<string.h>
char *fun(char *str)
{
    int i = 0 ;
    int j = 0 ;
    for( ; i < strlen(str) ; i++ )
    {
        if( str[i] != ' ' )
        {
            str[j++] = str[i] ;
        }
    }
    str[j] = '\0' ;
    return str ;
}
void main()
{
    char s[81],*ds;
    printf("\nPlease enter a string:");
    gets(s);
    ds=fun(s);
    printf("\nResult:%s\n",ds);
}


下边是很少存储空间的...
#include<conio.h>
#include<stdio.h>
#include<string.h>
int main()
{
    int ch ;
    while( ( ch = getchar() ) != '\n' )
    {
        if( ch == ' ' )
            continue ;
        else
            putchar( ch ) ;
    }
    printf("\n") ;
    return 0 ;
}

[ 本帖最后由 『点点滴滴』 于 2011-2-18 11:44 编辑 ]
2011-02-18 11:30
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:3 
int i=0;
char String[N],c;
while((c=getchar())!='\n'&&i<N)
{
      putchar(c);
      if(c==' ')
      contiune;
      String[i++]=c;
}
 String[i] = '\0';
puts(string);
程序代码:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define N 100
int main()
{
   int i=0;
   char String[N],c;

   while((c=getchar())!='\n'&&i<N)
   {
      if(c==' ')
      continue;
      String[i++]=c;
   }

   String[i] = '\0';
   puts(String);

    getch();
    return 1;
}


这个在速度与空间相对平衡,LS那个花了一定存储空间的.

[ 本帖最后由 点线面 于 2011-2-18 11:45 编辑 ]

小代码,大智慧
2011-02-18 11:36
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:3 
2楼的像教科书里写的,3楼的写法似乎很随意~, 都收藏啦。

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-02-18 11:40
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:0 
回复 2楼 『点点滴滴』
下面那个程序会破环整个结构。
建意用getch(),这个效果会更好

[ 本帖最后由 点线面 于 2011-2-18 11:52 编辑 ]

小代码,大智慧
2011-02-18 11:50
『点点滴滴』
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:168
专家分:1035
注 册:2007-7-9
收藏
得分:0 
回复 5楼 点线面
上边那个没要额外的存储空间呀,用的是传进来的string的内存
在原串的基础上修改的
2011-02-18 11:52
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:0 
回复 6楼 『点点滴滴』
你运行程序就明白
程序代码:
#include<stdio.h>
#include<conio.h>

int main()
{
    char c;

    while((c=getch())&&c!=' '?putchar(c)&&c!=13:1);

    return 1;
}
这个相当于下面那个小程序


[ 本帖最后由 点线面 于 2011-2-18 12:14 编辑 ]

小代码,大智慧
2011-02-18 11:55
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:3 
两位各有千秋

免费赠送河蟹一只
2011-02-18 12:43
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:3 
学习..学习.
2011-02-18 16:16
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
收藏
得分:3 
这是传说中的“求作业”么?
题目完全不难,思考一下都能写出的,简单的数组遍历。

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-18 17:43
快速回复:编写函数fun,其功能是删除一个字符串中的所有空格
数据加载中...
 
   



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

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