使用系统标准库函数strlen(s)就可以测得字符数组s中的字符串的字符个数,也就是字符串的长度,需要包含string.h头文件。
成都创新互联是一家集网站建设,新乡企业网站建设,新乡品牌网站建设,网站定制,新乡网站建设报价,网络营销,网络优化,新乡网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
原发布者:zlaikai1314
#include#include#include#includeusingnamespacestd;chara[100];//字符数组intb[100];//字符个数doublep_a[100];//字符概率数组intsum=0;//字符总数//判断当前字符temp是否已出现过boolsearch(chartemp,chara[],intm,intn)//m为数组a的元素总个数,即100;n为当前数组a中存放的字符种类的个数{inti=0;while(in){if(a[i]==temp)returntrue;elsei++;}returnfalse;}//求各个字符的个数,放在数组b中voidread_file(stringfile_name="test_data.txt"){intk=0;ifstreamfile(file_name.c_str());//将string转化为char数组chartemp;if(file.is_open()==true)//检查文件是否打开{while(file.peek()!=EOF)//从文件中读取一个字符,但该字符并未从输入流中删除{file.get(temp);//从文件读入一个字符并把它存储在tempsum++;//统计出现的字符总数if(search(temp,a,100,k)){for(inti=0;ik;i++){if(temp==a[i]){b[i]++;break;}}}else
#include stdio.h
#include string.h
int conNumfromStr(char *,int);
int main()
{
char str[21];
printf("输入20以内的字符:");
scanf("%s",str);
printf("字符串中数字字符个数为:%d",conNumfromStr(str,strlen(str)) );
return 0;
}
int conNumfromStr(char *p,int len)//计数字符串中数字字符的个数
{
int i,con=0;
for(i=0;ilen;i++)
{
if(p[i]='0' p[i]='9')
con++;
}
return con;
}
#includestdio.h
#includestring.h
main()
{
int i,j=0,k;
char a[1000];//长度自己根据实际情况调整
printf("请输入一串字符串:\n");
gets(a);
k=strlen(a);
for(i=0;ik;i++)
if('0'=a[i]='9')
j++;
printf("这串字符串中数字字符有%d个!\n",j);
}
一般有三种办法可以计算英文字符的个数:
1)使用strlen()函数
2)从首字符开始,边扫描边计数,到'\0'为止('\0'不计数)
3)从首字符开始,扫描到'\0'为止,'\0'地址与字符串首地址的差。
char *ch,就是定义一个字符型的指针,来接收指针,在你的程序里就是接收你输入的字符串的首地址。要想返回实参,根据你的目的,应该是各类字符的个数,可以用一个数组实现。
int* sum(char *ch,int sum[4]);用一个长度为4的一维数组来统计各类字符的个数;
同样int* 表示返回一个整形指针;
你应该这样调用sum()函数;p=sum(ch,sum);(当然你之前要,在main()里定义一个整形指针接受sum()的返回值),把sum[4]={0}初始化全部为0,),用p[0],p[1],p[2],p[3]表示
字母,数字,空格和其他字符的个数。
不明白的再问我