C语言编写写一函数,计算输入的字母在输入的字符串里的个数。
来源:百度知道 编辑:UC知道 时间:2024/06/28 07:24:52
要求不用函数以后的知识!
#include"stdio.h"
int shumu(zifu,zimu)
char zifu[];
char zimu;
{
int i;
int n=0;
for(i=0;zifu[i]!='\0';i++)
{
if(zifu[i]==zimu)
n++;
}
return n;
}
void main()
{
char zf[100];
int m;
char zm;
printf("请输入一个字符串:");
gets(zf);
printf("请输入您要查找的字母:");
scanf("%c",&zm);
m=shumu(zf,zm);
printf("\n%c的个数为%d\n",zm,m);
}
这是我写的,诸位评价一下,我是初学者。
#include"stdio.h"
int shumu(zifu,zimu)
char zifu[];
char zimu;
{
int i;
int n=0;
for(i=0;zifu[i]!='\0';i++)
{
if(zifu[i]==zimu)
n++;
}
return n;
}
void main()
{
char zf[100];
int m;
char zm;
printf("请输入一个字符串:");
gets(zf);
printf("请输入您要查找的字母:");
scanf("%c",&zm);
m=shumu(zf,zm);
printf("\n%c的个数为%d\n",zm,m);
}
这是我写的,诸位评价一下,我是初学者。
您的"zf"、"zm"两个变量,没必要设为全局变量。
还有,最好不要用汉语拼音命名函数、变量等,用英文,比如count,str这样的,多看看命名规范,有好的代码风格是很重要的。
int count(char* str, char c)
{
int cnt = 0;
char temp = *str;
while (temp != '\0')
{
if(temp == c)
cnt++;
temp = *(str++);
}
return cnt;
}
#include <stdio.h>
int main()
{
char ch, str[100];
int count, i, j;
printf("输入一个字母\n");
scanf("%c", &ch);
printf("输入字符串\n");
scanf("%s", str);
for(j = 0; str[j] != '\0'; j ++) ;
for(i = 0, count = 0; i < j ; i ++)
{
if(ch == str[i])
count ++;
}
printf("输入的字母在输入的字符串里的个数为%4d\n", count);
return 0;
}
多看别人写的程序