| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 712 人关注过本帖
标题:谁帮忙解答下,谢谢
只看楼主 加入收藏
lihengming
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:29
专家分:2
注 册:2009-3-8
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:9 
谁帮忙解答下,谢谢
定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。
    例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数时,不得使用C语言提供的字符串函数。
    注意: 部分源程序在文件PROG1.C中。
    请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include <stdio.h>
void  fun( char *a )
{


}

main()
{  char  s[81];
   void NONO (  );
   printf("Enter a string:\n");gets(s);
   fun( s );
   printf("The string after deleted:\n");puts(s);
   NONO();
}
搜索更多相关主题的帖子: 解答 
2010-03-08 16:11
佳嘉
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:534
专家分:1383
注 册:2009-11-8
收藏
得分:0 
哇塞,这是计算机二级考试的题目呀
2010-03-08 16:28
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:5 
void  fun( char *a )
{
    int i = 0;
    int len = 0;
    while(a[i] && ('*' == a[i]))
    {
        len ++;
        i ++;
    }
    strcpy(a, &a[len]);
}
2010-03-08 16:33
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:0 
其实只用i一个变量就行了
2010-03-08 16:35
djwshh
Rank: 2
等 级:论坛游民
帖 子:10
专家分:21
注 册:2010-1-19
收藏
得分:5 
题目中没有<string.h>库函数。用strcpy不合适,用如下的程序是可以的。见过测试的
void  fun( char *a )
{
    int i = 0;
    int j = 0;
    while(a[i] && ('*' == a[i])) i ++;
    for(j=0;a[i]!='\0';j++,i++)
        a[j]=a[i];
    a[j]='\0';
}
2010-03-09 00:17
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
收藏
得分:0 
没仔细看清楚题目(不得使用C语言提供的字符串函),用楼上的好
2010-03-09 08:43
陈大师
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:231
专家分:1038
注 册:2009-11-4
收藏
得分:0 
void fun( char *a )
{
    char *str = a;
    while(*(a++) == '*');
    a++;
    for(; *a!='\0'; a++, str++)
    {
        *str = *a;
    }
    *str = '\0';

}
看看这个····
2010-03-09 10:33
陈大师
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:231
专家分:1038
注 册:2009-11-4
收藏
得分:10 
void fun( char *a )
{
    char *str = a;
    while(*a == '*' && *a!='\0')
    a++;
    for(; *a!='\0'; a++, str++)
    {
        *str = *a;
    }
    *str = '\0';

}
2010-03-09 11:05
qq8801103
Rank: 5Rank: 5
来 自:苏州中科大软件学院
等 级:职业侠客
威 望:1
帖 子:422
专家分:340
注 册:2009-10-8
收藏
得分:0 
这个题目 有难度啊

Discuz!  
好好学习  天天向上
2010-03-09 11:29
caoxh0415
Rank: 2
等 级:论坛游民
帖 子:125
专家分:23
注 册:2008-4-24
收藏
得分:0 
我觉得应该没有楼上的同学写的这么简单啊
2010-03-09 11:48
快速回复:谁帮忙解答下,谢谢
数据加载中...
 
   



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

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