| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 390 人关注过本帖
标题:各位大哥 帮我看看哪错了 非常感谢!
只看楼主 加入收藏
我在戈壁
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-5
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
各位大哥 帮我看看哪错了 非常感谢!
asd***变asd
#include<stdio.h>
#include<string.h>
void fun(char b[]);
void main()
{
    char a[80];
    printf("输入一个由字母和幸好构成的字符串:");
    gets(a);
    fun(a);
    printf("删除后面星号后的字符串是:");
    puts(a);
}
void fun(char b[])
{
    int i,j,k;
    j=strlen(b);
    for(i=j-1;i>0;i--)
    {
        if(b[i]=='*')
            b[i]='\0';
        if(b[i]!='*')
            break;
    }
}
搜索更多相关主题的帖子: include 字符串 大哥 字母 
2015-06-13 22:06
calix
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:28
帖 子:249
专家分:1442
注 册:2015-5-4
收藏
得分:10 
程序代码:
if(b[i]=='*')
    b[i]='\0';
if(b[i]!='*')
    break;
该为
if(b[i]=='*')
{
    b[i]='\0';
    break;
}

如果有多个*,最好从前面开始循环,否则要去掉break   
2015-06-13 22:47
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:10 
程序代码:
#include<stdio.h>
#include<string.h>
void fun(char b[]);
int main()
{
    char a[80];
    printf("输入一个由字母和幸好构成的字符串:");
    gets(a);
    fun(a);
    printf("删除后面星号后的字符串是:");
    puts(a);
return 0;
}
void fun(char b[])
{
    int i,j,k;
    j=strlen(b);
    for(i=j-1;i>0;i--)
    {
        if(b[i]=='*')
            b[i]='\0';
        if(b[i]!='*')//第一次执行上个if后就执行了这一句,因为此时*已经变为\0满足if条件
            break;
    }
}

一片落叶掉进了回忆的流年。
2015-06-13 22:48
我在戈壁
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-5
收藏
得分:0 
非常感谢
2015-06-13 23:02
快速回复:各位大哥 帮我看看哪错了 非常感谢!
数据加载中...
 
   



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

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