| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 919 人关注过本帖
标题:关于前导后导‘*’星号问题
只看楼主 加入收藏
单向路
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-6-27
收藏
 问题点数:0 回复次数:4 
关于前导后导‘*’星号问题
要考二级了,最近在看书 关于删除星号的题不太懂 问问大家~
题目:****abc*d**e**f*****  
怎样删除字母中间的星号?

int i=0,j=0;
while(s[i]=='*')
{i++;}
 if(s[i]>='a'&&s[i]<='f'&&s[i]=='*')
 s[j++]=s[i];

这是我自己想的,不过错误严重,中间的if不知道怎么写?
搜索更多相关主题的帖子: 前导 星号 
2008-09-10 19:00
liyanhong
Rank: 3Rank: 3
来 自:水星
等 级:禁止访问
威 望:8
帖 子:1867
专家分:0
注 册:2008-5-3
收藏
得分:0 
我写过好几个这类的题 随便找个给你看看
/*刪除字符串的前導和尾部的全部*字符  字母之間的不刪除*/
#include <stdio.h>
#include <string.h>
PRINT(char s[])
{
  FILE *out;
  if((out=fopen("C:\\24000118\\RESULT.TXT","w+"))!=NULL)
    fputs(s,out);
  fclose(out);
}

char s[]="***A*BC*DEF*G***";
main()
{
  int i,j,k;
  i=0;
  while(s[i]=='*')
  {
    for(j=i;s[j]!='\0';j++)
    s[j]=s[j+1];
    i=0;
  }
  i=strlen(s)-1;
  while(!isalpha(s[i]))
  {
    s[i]='\0';
    i--;
  }
  
  PRINT(s);
}

爱上你 是 我的错  可是离 开  又舍不得  听着你为我写的歌     好难过
如果说 我说如果  我们还 能  重新来过   不去计 较 谁对谁错  会怎么做
2008-09-10 19:07
单向路
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-6-27
收藏
得分:0 
这个我看不懂耶~
2008-09-12 22:12
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
额……问问大家,这种过滤条件的正则表达式是怎么写的??

…………自己写出来了:(VIM命令)
:%s/^\**\(\%([^*]*\**[^*]\+\)*\)\**$/\1/g
下面这个也可以……
:%s/^\**\(\%(\**[^*]\+\)*\)\**$/\1/g

[[it] 本帖最后由 StarWing83 于 2008-9-12 23:14 编辑 [/it]]

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-09-12 23:08
单向路
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-6-27
收藏
得分:0 
  就没有个简单易懂的吗 只用for就行了
2008-09-17 18:02
快速回复:关于前导后导‘*’星号问题
数据加载中...
 
   



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

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