题目做不出。(十万火急)大家帮个忙
编写函数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'; }
----------------解决方案--------------------------------------------------------
多谢~~
----------------解决方案--------------------------------------------------------