#include<stdio.h>
#include<string.h>
int panduan(char *str ,char x);
void main()
{
char zimu[100];
char zi;
printf("请输入字母");
gets(zimu);
gets(zi);
panduan(zimu , zi);
printf("次数 = %d", panduan(zimu , zi));
}
int panduan(char *str , char x)
{
int i , leng , cishu = 0;
leng = strlen(str);
for( i = 0 ; i < leng - 1
; i++)
{
if(str[i] != x )
{
}
else
cishu++;
}
return cishu;
}
//目的是输入一串字母,再输入一个字母判断这个字母在这串字符中出现的次数
#include<stdio.h>
#include<string.h>
int panduan(char *str ,char x);
void main()
{
char zimu[100];
char zi;
printf("请输入一行字符串:");
gets(zimu);
printf("请输入一个字符:");
zi = getchar();
panduan(zimu , zi);
printf("次数 = %d", panduan(zimu , zi));
}
int panduan(char *str , char x)
{
int i , leng , cishu = 0;
leng = strlen(str);
for( i = 0 ; i < leng - 1
; i++)
{
if(str[i] != x )
{
}
else
cishu++;
}
return cishu;
}
//目的是输入一串字母,再输入一个字母判断这个字母在这串字符中出现的次数
// Output
请输入一行字符串:ASDFGABCDEFQAZAAABBBCCCDDDAA
请输入一个字符:A
次数 = 7
主要是zi是定义喂一个字符,gets(zi)造成越界,后果不课预计。应该定义为u字符数组或者用getchar()函数只读一个字符。你看我修改后的代码运行通过了
不知道你这个问题是否已经解决, 如果还没有解决的话: