假定给定字符串:*****a****bc****def****
要求编程分别实现:删除字符串中的前导星号、尾随星号和所有星号。
1、删除前导星号(*)
原字符串:*****a****bc****def****
处理后的字符串:a****bc****def****
#include <stdio.h>
int main()
{
char str[80];
char index;
char firstAlphaIndex;
int i;
printf("请输入字符串:");
scanf("%s", str);
for(index = 0; str[index]; index++) {
if(str[index] != '*') {
firstAlphaIndex = index;
break;
}
}
for(i = firstAlphaIndex; str[i]; i++){
printf("%c", str[i]);
}
printf("\n");
return 0;
}
2、删除尾随星号(**)
原字符串:*****a****bc****def****
处理后的字符串:a****bc****def
#include <stdio.h>
int main(){
char str[80];
char index;
char lastAlphaIndex = -1;
printf("请输入字符串:");
scanf("%s", str);
for(index = 0; str[index]; index++){
if(str[index] != '*'){
lastAlphaIndex = index;
}
}
str[lastAlphaIndex + 1] = 0;
printf("%s\n", str);
}
3、删除所有星号(***)
原字符串:*****a****bc****def****
处理后的字符串:abcdef
#include <stdio.h>
int main(){
char str[80];
char index;
char lastAlphaIndex = -1;
printf("请输入字符串:");
scanf("%s", str);
for(index = 0; str[index]; index++){
if(str[index] != '*'){
lastAlphaIndex = index;
}
}
str[lastAlphaIndex + 1] = 0;
printf("%s\n", str);
}