1.求高手三级C语言
求高手三级C语言
本题提供了一种使用字符串处理函数解决的方案,涉及的函数有:char *strchr(char *s,char ch); - 从s所指向的字符串中查找字符ch,返回该字符的领带筹选源码指针,找不到返回NULL。
void memset(char *s ,PayerMax支付源码char ch,unsigned count); - 将s所指向的数组的前count个字符全部赋值为ch,若ch为'\\0'且count为字符数组长度,条件单源码则清空数组。
void memcpy(char *s1,char *s2,unsigned count); - 将s2字符串的前count个字符拷贝到s1所代表的字符串中。
关于strcpy()和strcat()函数的使用,这里不再赘述。
以下为程序源码:
void Str0R(void) {
int i; /* 遍历行 */
char *p,t[]; /* p指向字符'o',t用于存放'o'前的字符串 */
for(i=0;i
{
p=strchr(xx[i],'o'); /* 查找'o'字符,找到则让p指向它,维克多法则源码否则返回NULL */
while(p!=NULL) {
memset(t,'\\0',); /* 清空数组t */
memcpy(t,xx[i],p-xx[i]); /* 将'o'前的字符拷贝到t中 */
strcpy(xx[i],p+1); /* 删除'o'及'o'前的字符串 */
strcat(xx[i],t); /* 将'o'前的字符串连接到处理后的字符串末尾 */
p=strchr(xx[i],'o'); /* 寻找下一个'o' */
}
}
}