编写函数 void fun(char *str),实现将字符串尾部的*号全部删除,前面的和中间的*号不删除
4个回答
展开全部
#include <stdio.h>
#include <string.h>
void fun(char *str)
{
int len = 0;
int i = 0;
if(str == NULL)
{
return;
}
len = strlen(str);
for(i = len -1; i >=0; i--)
{
if(str[i] == '*')
{
str[i]='\0';
}
else
{
break;
}
}
printf("%s\n",str);
}
int main()
{
char a[] = {"***"};
fun(a);
return 0;
}
#include <string.h>
void fun(char *str)
{
int len = 0;
int i = 0;
if(str == NULL)
{
return;
}
len = strlen(str);
for(i = len -1; i >=0; i--)
{
if(str[i] == '*')
{
str[i]='\0';
}
else
{
break;
}
}
printf("%s\n",str);
}
int main()
{
char a[] = {"***"};
fun(a);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void fun(char *str) {
char *p1 = str;
char *p2 = str;
while (*p2 != 0x00) {
if (*p2 == 0x20) {
*p1++ = 0x20;
while (*p2 == 0x20) {
p2 ++;
}
} else {
*p1++ = *p2++;
}
}
*p1 = 0x00;
}
char *p1 = str;
char *p2 = str;
while (*p2 != 0x00) {
if (*p2 == 0x20) {
*p1++ = 0x20;
while (*p2 == 0x20) {
p2 ++;
}
} else {
*p1++ = *p2++;
}
}
*p1 = 0x00;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void fun(char *str)
{
char *p;
while(*str!='\0')
{
if(*str!='*')p=++str;
else
{
str++;
if(*str=='\0')*p='\0';
}
}
}
}
{
char *p;
while(*str!='\0')
{
if(*str!='*')p=++str;
else
{
str++;
if(*str=='\0')*p='\0';
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询