改错题
下列给定程序中,函数FUN的功能是:判断字符CH是否与STR所指串中的某个字符相同:若相同,则什么也不做,若不同,则将其插在串的最后。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动MAIN函数,不得增行或删行,也不要更改程序的结构!
试题程序:#include
#include
#include
/********found********/
void fun(char str, char ch)
{
while (*str && *str!=ch)
str++;
/********found********/
if (*str == ch)
{
str[0] = ch;
/********found********/
str[1] = '0';
}
}
main()
{
char s[81], c;
printf("\n Please enter a string:\n");
gets(s);
printf("\n Please enter the character to search:");
c = getchar();
fun(s, c);
printf("\nThe result is %s\n", s);
}
第1处:void fun(char str,char ch)应改为void fun(char *str,char ch)
第2处:if(*str==ch)应改为if(*str==’\0’)
第3处:str[1]=’0’;应改为str[1]=’\0’;或str[1]=0
编辑推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |