C语言编程题:求指定字符在字符串中出现的次数并输出

例如:输入“this is a program",当指定字符是”a“时,输出”the result is:2"
#include <string.h>
#include <stdio.h>
int fun(char str1[],char ch)
{
/***********begin***********/

/************end************/
}

void main()
{
void NONO( );//函数声明
char str1[80],ch;
int count;
printf("Enter str1:\n");
gets(str1);
printf("Enter ch:\n");
ch=getchar();
count=fun(str1,ch);
printf("Result is: %d\n",count);
NONO( );
}

void NONO( )
{FILE *fr,*fw;
int i, count;
char str[80], ch;
fr=fopen("D:\\exam\\03100210\\PROGIN.DAT","r");
fw=fopen("D:\\exam\\03100210\\PROGOUT.DAT","w");
for(i=1; i<=2; i++)
{ fscanf(fr,"%s",str);fgetc(fr);
ch=fgetc(fr);
count=fun(str,ch);
fprintf(fw,"Result is :##%d\n",count); }
fclose(fr);
fclose(fw);
}

第1个回答  2012-05-16
#include <string.h>
#include <stdio.h>
int fun(char str1[],char ch)
{
/***********begin***********/
int i;
int sum=0;
for(i=0;i<strlen(str1);i++)
{
if(str1[i]==ch)
sum++;
}
return sum;
/************end************/
}

void main()
{
void NONO( );//函数声明
char str1[80],ch;
int count;
printf("Enter str1:\n");
gets(str1);
printf("Enter ch:\n");
ch=getchar();
count=fun(str1,ch);
printf("Result is: %d\n",count);
NONO( );
}

void NONO( )
{FILE *fr,*fw;
int i, count;
char str[80], ch;
fr=fopen("D:\\exam\\03100210\\PROGIN.DAT","r");
fw=fopen("D:\\exam\\03100210\\PROGOUT.DAT","w");
for(i=1; i<=2; i++)
{ fscanf(fr,"%s",str);fgetc(fr);
ch=fgetc(fr);
count=fun(str,ch);
fprintf(fw,"Result is :##%d\n",count); }
fclose(fr);
fclose(fw);
}
湖工大 彭 路
第2个回答  2012-05-11
int fun(char str1[],char ch)
{
int result=0;
char *temp=NULL;
for(temp=str1;(*temp)!='\0';temp++)
if((*temp)==ch)
result++;
return result;
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网