rprt.net
当前位置:首页 >> C语言大神来帮我看一道题目。输入一个字符串统计其中各个字符出现的次数。 >>

C语言大神来帮我看一道题目。输入一个字符串统计其中各个字符出现的次数。

我大概看懂了你的思路,你是先找到所有出现的字符,存到 b[],然后统计出现次数. for(j=1,i=1;j<n;j++) { m = 0; //你应该在这里添加一个语句,当标志位用. for(k=0;k<j;k++) if(a[j]==a[k]) m++; //这里还可以写成 {m=1; break;} if(m==0) { b[i]=a[j]; i++; } }如果当字符多的时候,这个方法就不太好了,有比这个好方法

源程序代码如下:#include "pch.h"#define _CRT_SECURE_NO_WARNINGS//VS环境下需要,VC不需要#include<stdio.h> int main() { char c = 0;//定义输入字符变量 int num_count = 0;//数字个数 int bigalp_count = 0;//大写字母个数 int

一、算法分析:要统计每个字符出现的个数,那么就要为每个字符做一个统计值,可以用数组实现.然后输入字符串.遍历字符串,对每个字符进行统计.输出结果.二、参考代码:#include <stdio.h>int main(){ int cnt[128]={0};//用来统计个数

/*这个是统计给定的字符串,如果想统计人为输入的要加点语句,你自己看吧*/main(){char arr[10]={'c','c','d','a','r','k','n','e','s','s'};int i,j,sum[26];for(i=0;i 评论0 0 0

#include<stdio.h> int main() { char str[200]; int i,num; scanf("%s",str); num=0; for(i=0;str[i];i++) { if(str[i]=='*') num++; } printf("%d\n",num); return 0; }

//统计一个文件里各个字符出现的次数,转换频率自己再加几句就是了,这里只统计了26个字母,如果还有更多的字符的话,将数组再扩大就行了,应该比较简单,我就不写了#include<stdio.h>#include<math.h>void stat(char *file,int *statistic){ int

//输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数. #include int main(void) { char ch; int a=0,b=0,c=0,d=0; while((ch=getchar())!='\n') { if(ch>='a'&&ch='a'&&ch='0'&&ch

#include void main() {char c,s[80]; int i,k=0; gets(s); /*输入字符串*/ printf("please input a character:"); c=getchar(); for(i=0; s[i]!='\0'; i++) {if(s[i]==c) k++; } printf("%c is found %d times",c,k); }

#include <stdio.h>void main(){char c;int i,letters=0,num[26]={0}; //字符的个数, 26个字符个数初始化为0printf("请输入一段字符串:\n");while((c=getchar())!='\n'){ if(c>='a'&&c<='z'||c>='A'&&c<='Z') { letters++; if(c>='a'&&c<='z') num[c-'a']++;

//输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数.#include int main(void) { char ch; int a=0,b=0,c=0,d=0; while((ch=getchar())!='\n') { if(ch>='a'&&ch='a'&&cha++; else if(ch>='0'&&chb++; else if(ch==' ') c++; else d++; } printf("字母=%d\n数字=%d\n空格=%d\n其他字符=%d\n",a,b,c,d); return 0; }

网站首页 | 网站地图
All rights reserved Powered by www.rprt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com