#include<stdio.h>
#define number 20
int main()
{
void myremove(char*,char);
char message[number];
char m;
int i;
printf("Please input a list of words:");
gets(message);
printf("\nPlease input a letter which you want to delate:");
scanf("%c",&m);
printf("The answer is:");
myremove(message,m);
return 0;
}
void myremove(char message[],char m)
{
int i=0;
while(message[i] != '/0' && i<number)
{
if(message[i] == m)
{
printf("%c\b",message[i]);
i++;
}
else
{
printf("%c",message[i]);
i++;
}
}
;
}
C语言程序后面出现烫烫~~~~~
答案:3 悬赏:30 手机版
解决时间 2021-02-04 01:08
- 提问者网友:美人性情
- 2021-02-03 08:22
最佳答案
- 五星知识达人网友:刀戟声无边
- 2021-02-03 09:05
while(message[i] != '\0' && i<number) //斜杠写反了
全部回答
- 1楼网友:从此江山别
- 2021-02-03 09:55
这是你定义的字符串没有初始化为0,当输出的时候编译器找到不到字符串结束符。就会出现这样的乱码。你可以将你的结构体中定义的字符数组都初始化为0.或者直接用memset()把结构体定义的变量初始化为0试一下。你的程序没有具体看,不过应该就是这个问题吧~
- 2楼网友:过活
- 2021-02-03 09:14
while判断条件里面的\0写反了,所以这个条件压根没起作用,一直输出到i<number条件生效。
另外message数组也没有清零,所以会输出“烫烫烫”等随机的奇怪字符。
另外再提两个无关痛痒的问题,提示信息delete写错了,还有最好写成'\0' != message[i];
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯