给定字符串str ,任务是编写C程序以删除给定字符串中的前导空格。
例子 :
Input: str = ” geeksforgeeks”
Output: geeksforgeeks
Input: str = “gfg”
Output: gfg
方法:想法是计算给定字符串的前导空格,然后从该计数索引中将字符从该索引复制到字符串。步骤如下:
- 初始化count = 0以对前导空格的数量进行计数。
- 遍历给定的字符串并找到前导空格字符结束处的索引(例如idx )。
- 遍历该索引idx中的所有字符,并将该索引中的每个字符复制到前端索引的末尾。
- 最后,在新字符串的最后一个索引处放置’\ 0’以终止字符串。
下面是上述方法的实现:
C
// C program for the above approach
#include
// Function to remove leading
// spaces from a given string
char* removeLeadingSpaces(char* str)
{
static char str1[99];
int count = 0, j, k;
// Iterate String until last
// leading space character
while (str[count] == ' ') {
count++;
}
// Putting string into another
// string variable after
// removing leading white spaces
for (j = count, k = 0;
str[j] != '\0'; j++, k++) {
str1[k] = str[j];
}
str1[k] = '\0';
return str1;
}
// Driver Code
int main()
{
// Given string
char str[] = " geeksforgeeks";
char* ptr;
// Function call
ptr = removeLeadingSpaces(str);
// Print string without leading space
printf("%s", ptr);
return 0;
}
输出:
geeksforgeeks
时间复杂度: O(N)
辅助空间: O(N)
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。