从C中的数组中删除的空间? [英] Remove spaces from an array in C?
本文介绍了从C中的数组中删除的空间?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从我的阵列secuencia删除空格,网友给我这个条目:
1 2 3 4 5 6 7 8 9
我想删除的空间,并将其保存在另一个数组供以后使用。然后,用转换ATOI为整就像我的阵列palancas和palancaroja做的。这两个阵列仅含一个号码,所以我没有问题,和他们在一起。
请帮我...我在编程ANSI C
的#include<&stdio.h中GT;
#包括LT&;&stdlib.h中GT;
#包括LT&;&string.h中GT;INT主(INT ARGC,为const char * argv的[])
{
焦炭palancas [20000]
INT palancai;
炭palancaroja [10];
INT palancarojai;
焦炭secuencia [20000]
焦温[20000]
INT J = 0; 的printf(圣母院厄尔尼诺NÚMERO德Palancas:);
与fgets(palancas,20000,标准输入); 的printf(圣母院香格里拉Posision德拉帕兰卡罗亚:);
与fgets(palancaroja,10,标准输入); palancai =的atoi(palancas);
palancarojai =的atoi(palancaroja); 的printf(圣母院香格里拉卡德纳);
与fgets(secuencia,20000,标准输入); 的for(int i = 0; I< palancai;我++){ 如果(secuencia由[i]!=''){ 临时[I] = secuencia [I]
的printf(%S,温度);
}
}
}
解决方案
这是从一个字符串中删除空格最简单的方法。
的char * SourcePtr = secuencia;
字符* TargetPtr = SourcePtr;而(* SourcePtr!= 0)
{
如果(* SourcePtr!='')
{
* TargetPtr = * SourcePtr;
TargetPtr + = 1;
}
SourcePtr + = 1;
}
* TargetPtr = 0;
I am trying to remove the spaces from my array "secuencia", the users give me this entry:
"1 2 3 4 5 6 7 8 9"
I want to remove the spaces, and save it in another array for later. Then, convert to integer with "ATOI" like I do with the arrays "palancas" and "palancaroja". Those two arrays only contained one number, so I had no problem with them.
please help me... I am programming in ANSI C.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char * argv[])
{
char palancas [20000];
int palancai;
char palancaroja[10];
int palancarojai;
char secuencia[20000];
char temp[20000];
int j = 0;
printf("Dame El Numero De Palancas:");
fgets(palancas, 20000, stdin);
printf("Dame La Posision De La Palanca Roja:");
fgets(palancaroja, 10, stdin);
palancai = atoi(palancas);
palancarojai = atoi(palancaroja);
printf("Dame La cadena");
fgets(secuencia, 20000, stdin);
for (int i = 0; i < palancai; i++) {
if (secuencia [i] != ' ') {
temp [i] = secuencia [i];
printf("%s", temp);
}
}
}
解决方案
This is the simplest way to remove spaces from a string.
char *SourcePtr = secuencia;
char *TargetPtr = SourcePtr;
while (*SourcePtr != 0)
{
if (*SourcePtr != ' ')
{
*TargetPtr = *SourcePtr;
TargetPtr += 1;
}
SourcePtr += 1;
}
*TargetPtr = 0;
这篇关于从C中的数组中删除的空间?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文