C语言中去掉空格问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中去掉空格问题相关的知识,希望对你有一定的参考价值。
程序改错题:
gc505.c通过接受键盘输入的字符串,通过调用函数trimspace(),实现去掉字符串的前空格和尾空格。
程序有两处错误,请找出并修正,使之符合上述要求。不得增加行或删除行,也不得更改程序结构。
#include<string.h>
main()
char str[100];
void trimspace(char *);
gets(str);
trimspace(str);
puts(str);
/*------------Found Mistake Below------------*/
void trimspace(char *p)
char *q;
if(*p!='\0')
q=strlen(p);
else
return;
/*------------Found Mistake Below------------*/
for(;*q==' ';q--);
*q='\0';
for(q=p;*q==' ';q++);
strcpy(p,q);
return;
void
vs_strrtrim(char
*pstr)
char
*ptmp
=
pstr+strlen(pstr)-1;
while
(*ptmp
==
'
')
*ptmp
=
'\0';
ptmp--;
/*去除字符串左边空格*/
void
vs_strltrim(char
*pstr)
char
*ptmp
=
pstr;
while
(*ptmp
==
'
')
ptmp++;
while(*ptmp
!=
'\0')
*pstr
=
*ptmp;
pstr++;
ptmp++;
*pstr
=
'\0';
参考技术A #include<string.h>
void trimspace(char *);
main()
char str[100];
gets(str);
trimspace(str);
puts(str);
/*------------Found Mistake Below------------*/
void trimspace(char *p)
char *q;
if(*p!='\0')
q=p+strlen(p)-1;
else
return;
/*------------Found Mistake Below------------*/
for(;*q==' ';q--);
*q='\0';
for(q=p;*q==' ';q++);
strcpy(p,q);
return;
本回答被提问者采纳 参考技术B 你自己都知道有两处错误,为什么不找找呢!懒!!!
Eclipse 保存时自动删除空格 自动去掉语句后面多余的空格?
我用的不是日文的Eclipse,就是最新的Helio,没找到你说的选项呢。
window->设定 -> 一般(日语)->editor->AnyEdit tool ->自动变换 (日语)里面第一个checkbox就是。 参考技术A Window->Preferences->C/C++->Editor->Save Actions->Remove trailing whitespace
以上是关于C语言中去掉空格问题的主要内容,如果未能解决你的问题,请参考以下文章