码迷,mamicode.com
首页 > 其他好文 > 详细

删除字符串中指定的*

时间:2019-08-18 19:57:18      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:赋值   功能   c语言   函数   sharp   删除   语言   get   void   

    假定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了尾部的*号之外,将字符中的其它的*号全部删除。
    形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。
#include<stdio.h>
void fun(char a[],char *p)
{
	char ch=*p;
	p=a;				//将p指向a
	while(*a!=ch)		//遍历a至最后一个字母,如果不是*就赋值给p
	{
		if(*a!=‘*‘)
		{
			*p++=*a;
		}
		a++;
	}	
	while(*a!=‘\0‘)		//将剩余的值赋给p
	{
		*p++=*a++;
	}
	a=p;
	*(a++)=‘\0‘;	//将a的最后字符置‘\0‘
}
void main()
{
	char s[81],*p;
	p=s;
	printf("please input a string:");
	gets(s);
	while(*p!=‘\0‘)p++;
	p--;
	while(*p==‘*‘)p--;		//将p指针指向最后一个字母
	fun(s,p);
	for(int i=0;s[i]!=‘\0‘;i++)
		printf("%c",s[i]);
	printf("\n");
}

  

删除字符串中指定的*

标签:赋值   功能   c语言   函数   sharp   删除   语言   get   void   

原文地址:https://www.cnblogs.com/-slz-2/p/11373430.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!