当前位置: 代码迷 >> C语言 >> 题目做不出。(十万火急)大家帮个忙
  详细解决方案

题目做不出。(十万火急)大家帮个忙

热度:395   发布时间:2005-01-25 18:48:00.0
题目做不出。(十万火急)大家帮个忙
编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大小写按不同字母处理。若程序执行时输入字符串为:trubo c  borland c++从键盘上输入字符n则输出结果为trubo c  borlad c++   如果输入的字符在字符串中不存在,则字符串按原样输出
搜索更多相关的解决方案: 函数  字符串  

----------------解决方案--------------------------------------------------------
其实也不难呀。只是我现在没有那么多的时间。我也有问题没弄清楚。其实就是用ASCI字符的对应数字来进行比较。如果=就不打印。字符用数组来存。这样就方便控制了。你慢慢试试。
----------------解决方案--------------------------------------------------------

就是这个意思 #include "stdio.h" void main() { char arr[100]; scanf("%s",arr); scanf("%c",&ch); fun(arr,ch); void fun(char str[],char c) for (i=0;i<strlen(arr);i++) if(strchr(arr,ch)!='n')

} 然后怎么样啊?


----------------解决方案--------------------------------------------------------
按照你的思路来。如果有相同的字符就不打印。数组下标就跳一个。就用IF来循环打印。一个字符。一个字符的打印。
----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
怎么了吗?行不通。
我刚刚那个内存指针问题。现在都没人解答呀。我刚刚的方法有错误哟。
----------------解决方案--------------------------------------------------------
哎~~头大
----------------解决方案--------------------------------------------------------

#include <stdio.h> void fun(char *str,char ch); int main(void) { char str[100]; char ch;

gets(str); ch=getchar(); puts(str);

fun(str,ch);

puts(str);

} void fun(char *str,char ch) { char *ptr;

ptr=str;

while(*str) { if(*str!=ch)*ptr++=*str++; else str++; } *ptr='\n'; }


----------------解决方案--------------------------------------------------------
多谢~~
----------------解决方案--------------------------------------------------------