做C语言练习题时遇到的问题,哪位有闲的大虾帮忙解答一下。
题目1:任意输入1组英文字符串,然后任意输入1个字母,查找该字母在最初输入的英文字符串中的个数。
题目2:任意输入1组英文字符串,指定其中1个字符,将所有同样的字符从字符串中删除。
以下是我对题目1的解答
#include <string.h>
int main(void)
{
char str; /* 被输入的任意英文字符串 */
int a; /* 英文字符串的文字数 */
int i; /* 反复查找的次数 */
char x; /* 想要查找并计数的字符 */
int n=0; /* 查找到的字符的数量 */
printf("Hellow,请输入任意英文字符串\n");
scanf("%s",str); /* 输入任意英文字符串str */
a=strlen(str); /* 计算出英文字符串的长度(即文字数) */
printf("输入想要查找的字符\n");
scanf("%c",x); /* 输入想要查找并计数的字符x */
for (i=0; i<a; i++) { /* 设置以字符数a为总查找回数的变数i */
if x==str(i) /* 将想要查找并计数的字符x与第i回查找结果进行对照比较 */
n=n+1; } /* 如果找到相同字符的话计数器n增加1 */
printf("被查找的字符%c共找到%d个。\n",x,n);
else
printf("没有找到被输入的字符。\n");
return 0;
}
组建时失败了,if x==str(i)这行没通过,似乎单个字符不能跟字符串里的任意字符进行比较;else的位置也不对,搞不明白哪里不对。请求高手修正一下。拜谢。
题目2里的删除功能是通过把指定字符替换成什么来实现的?