3 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
没什么大错误,只是读取字串,不需要循环,只要%s读取就行,
#include<stdio.h>
int main()
{
int replace(char a[]);
char a[20];
int i;
/*
for(i=0;i<20;i++)
scanf("%s",a[i]);
*/
scanf("%s",a);
replace(a);
/*
for(i=0;i<20;i++)
printf("%s",a[i]);
*/
printf("%s",a);
printf("\n");
return 0;
}
int replace(char a[])
{
int n=0;
int i;
for(i=0;i<20-1;i++)
//scanf("%s",a[i]);
if(a[i]=='t')
{n=n+1;a[i]='e';}
else if(a[i]=='T')
{n=n+1;a[i]='E';}
printf("替换字符的个数:%d",n);
return n;
}
不负相思意
TA贡献1777条经验 获得超10个赞
改成这样就行了
| 1234567891011121314151617181920212223242526272829 | #include<stdio.h>int replace(char a[]);int main(){ char a[20]; int n; scanf("%s", a); n = replace(a); printf("%s 替换字符的个数:%d\n", a, n); return 0;}int replace(char a[]){ int n=0; int i; for (i = 0; a[i] != '\0'; i++) { if(a[i]=='t') { n=n+1; a[i]='e'; } else if(a[i]=='T') { n=n+1; a[i]='E'; } } return n; |
添加回答
举报
0/150
提交
取消
