C语言:统计字符串中字符的种类

比如“AaHhsdjDNS”这个字符串 一共有6种字符
大写小写归为一种 这种到底咋写 没一点思路 各位大佬给点建议。。。。

0

2个回答

如果问题得到解决,请点我回答左上角的采纳和向上的箭头,谢谢

#include "stdio.h"

int main()
{
    int letter = 0;
    int digit = 0;
    int space = 0;
    int others = 0;
    char buf[100];
    int ln[26];
    for (int i = 0; i < 26; i++) ln[i] = 0;
    gets(buf);
    int i = 0;
    while (buf[i] != '\0')
    {
        if (buf[i] >= 'a' && buf[i] <= 'z')
        {
            ln[buf[i] - 'a']++;
            letter++;
        }
        else if (buf[i] >= 'A' && buf[i] <= 'Z')
        {
            ln[buf[i] - 'A']++;
            letter++;
        }
        else if (buf[i] >= '0' && buf[i] <= '9')
            digit++;
        else if (buf[i] == ' ')
            space++;
        else
            others++;
        i++;
    }
    int total = i - 1;
    printf("L=%d D=%d S=%d O=%d T=%d\n", letter, digit, space, others, total);
    for (int i = 0; i < 26; i++)
    {
        if (ln[i])
            printf("%c: %d\n", 'A' + i, ln[i]);
    }
    return 0;
}

图片说明

0

先全部转换成小写,
然后把它切分成字符数组,
定义一个set无序集合
遍历这个数组, 全部存入set集合中
种类就等于这个set的大小

注:java的思路
不知道c有没有set集合, 没有的话可以用计数器的思想

-2
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的。是时候展现真正的技术了!
其他相关推荐
统计字符串中字符种类的数目
#include int main() { char a[30],num=0,ab=0,el=0; scanf("%s",a); int i=0; while(a[i]!='\0'){ if(a[i]>='0'&&a[i]<='9'){ num++; }else if(a[i]>='a'&&a[i]<='z')
C语言,统计输入的字符各类的个数
#include<stdio.h> int main() { int char_num=0,int_num=0,space_num=0,other_num=0; char ch; while((ch=getchar())!='\n') { if(ch<='z'&&ch>='a'||ch<='Z'&&ch>='A') {
C语言——字符统计
 描述:   输入一行字符(字符个数不超过255),统计其中的小写字母、空格和其他字符的个数(字符中可能存在空格,请用gets()读入。) 输入:   一行字符串,长度小于255。 输出:   三个数字,每个一行,分别代表小写字母、空格和其他字符的个数。 输入样例:     Xiaolan.Lee 1   输出样例:     8 1 4     ...
【c语言】统计一个字符在字符串中出现的次数
#include <stdio.h> #include <stdlib.h> int countchar(char *str,char a){ int n=0; int i = 0; while(*(str+i)!='\0'){ if(*(str+i) == a) n++; i++; } return n
C/C++复习:统计字符串种类(指针)
/* *Copyright(c)2016,烟台大学计算机与控制工程学院 *All right reserved. *文件名称:77.cpp *作 者:董凯琦 *完成日期:2016年4月26日 *版 本 号:v1.0 * *问题描述:用指针编写一个程序,输入字符串后,统计其中各种字符的个数,输出其中大小写字母,数字,以及其他字符的个数。 主函数已经给出,请编写统计字符种类函数
C语言-字符串统计
题目描述对于给定的一个字符串,统计其中数字字符出现的次数。 输入描述输入数据是一个字符串。 输出描述对于输入数据,输出该串中数值的个数。 输入样例asdfasdf123123asdfasdf 输出样例6 这个问题很简单不难吧直接暴力解决吧上代码#include &amp;lt;stdio.h&amp;gt;#include &amp;lt;string.h&amp;gt;    //头文件 int main(){ int sum...
C语言之统计各种字符
在我们的程序设计中,很多时候都需要输入字符去判断所输入的字符是否正确,所以统计各种字符显得尤为重要。系统输入一行字符,分别统计出其中的大写英文字母、小写英文字母,数字和其他字符的个数,以回车作为结束标志。代码:#include <stdio.h>int main() { char c; int capital=0, lowercase=0, digit=0, other=0; /
C语言:统计各种字符的个数
要求输入一组字符,然后分别统计出其中英文字母、数字、空格以及其他字符的个数。#include #include int main() { char c; int letters = 0; int space = 0; int digit = 0; int others = 0; printf("please input a string:>"); while ((c = getch
C语言_统计本件中各长度字符串出现的次数
昨天去上海的渐华科技有限公司面试,到了之后只给做了一套笔试题和一道机试题。笔试题目内容很简单,常见的C语言的题目,还有一道手写编程:求字符串中最长的连续字符相同的字串的长度和位置。题目不难所以四十分钟就做完了,做完后就被喊去机试了,机试题目是:统计txt文档中各长度字符串的个数。做的过程中出现了很多问题。 我的思路是利用int 数组,统计下标长度的字符串出现的次数,然后输出。思路应该是没问题的。
c语言习题-统计指定字符个数
c语言习题-统计指定字符个数 要求 程序 运行结果 c语言习题-统计指定字符个数 要求 请编写函数fun,它的功能是:求出str所指字符串中指定字符的个数,并返回此值。 程序 #include int fun(char *str, char ch) //返回str所指字符串中指定字符(ch)的个数 { int i=0; while(*str!='\0')
c语言统计每个字符出现的次数
#include&amp;lt;stdio.h&amp;gt; #include&amp;lt;string.h&amp;gt; void main() { char str[20]; int i,num[256]={0}; printf(&quot;please input string:&quot;); scanf(&quot;%s&quot;,str); for(i=0;i&amp;lt;strlen(str);i++) ...
c语言统计输入字符串有多少不同的字母
int main(){ char cString[100]; int i,j,count; gets(cString); count=0; if(cString[0]=='\0'){ printf(&quot;请输入字符&quot;); printf(&quot;朋友,机会只有一次,拜拜!&quot;); } else if(cString[0]==' '){ printf(&quot;不要输入空格&quot;); printf(&quot;朋友,机会只有...
如何让用c语言统计字符串中小写字母,空格和其他字符的数目
Problem C 字符统计 时限:1000ms 内存限制:10000K 总时限:3000ms 描述: 输入一行字符(字符个数不超过255),统计其中的小写字母、空格和其他字符的个数(字符中可能存在空格,请用gets()读入。) 输入: 一行字符串,长度小于255。 输出: 三个数字,每个一行,分别代表小写字母、空格和其他字符的个数。 输入样例: Xiaolan
C语言中统计一个字符串单词的个数
Q:输入一串字符串,输出其中有多少个单词。 Eg:Good Wishes A: #include &amp;lt;stdio.h&amp;gt; #include &amp;lt;string.h&amp;gt; #define SIZE 20 int main() { char str[SIZE]={'\0'}; int count=0; printf(&quot;plz input the strin...
判断字符串中出现次数最多的那个字符,并统计次数
涉及的知识点有for循环,字符串的chatAt属性,对象的一些特征,并赋值取值的思想 &amp;lt;script&amp;gt; var str = &quot;zhaochucichuzuiduodezifu&quot;; var o = {}; for (var i = 0, length = str.length; i &amp;lt; length; i++) { // var char = str[i]; var char ...
用c语言编程 统计输入的一个字符串中每个字母出现的次数
#include #include int main() { char a[100]; int result[26]; for (int i=0;i { result[i]=0; } scanf("%s",a); int len=strlen(a); for (int j=0;j { result[a[j]-'a']+
C语言:编写一个程序统计输入字符串中,各个数字、空白字符、以及其他所有字符出现的次数。
#include int main() {      int c = 0;      int num_count = 0;      int emp_count = 0;      int els_count = 0;            while((c = getchar()) != EOF)      {           if((c >= '0')&&(c <= '9'))     
c语言从键盘上输入一串字符串,统计这个字符串中存在的数字和字母的总数
#include int main(int argc, const char * argv[]) {     char c;     int n=0,x=0;     c=getchar();     while (c!='*')     {         if ((c>'a'&&c'z')||(c>'A'&&c'Z'))         {    
C语言OJ项目参考(1032) 统计字符个数
(1032) 统计字符个数 Description 输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。 Input 一行字符 Output 统计值 Sample Input aklsjflj123 sadf918u324 asdf91u32oasdf/.’;123 Sample Output 23 16 2 4[参考解答]#include "stdio.h" in
统计字符串中字母出现的次数.c
/*不区分大小写*/#includeint main(){ int sum[26]={0}; char s[1024]=""; scanf("%s",s); int i; for(i=0;s[i];i++) if(s[i] >='a' && s[i]   { sum[s[i]-'a']++;   //sum[s[i]-'a']将a记作s[0],b记作s[1]...      } e
统计一个字符串中单词的个数(C语言)
统计字符串中单词的个数可以根据字符串中空格的数量判断。当然,不是每遇到一次空格就能计一次数的,有可能两个或者更多空格连在一起,为此需要设计计数判断的标准。 空格有三种情况会影响计数,第一种是出现在字符串的一开始,这时的单词很明显是0。第二种情况是出现在字符串中间,程序需要靠这种空格计数,但是如果两个或两个以上的空格连在一起,就只能计一次数。第三种就是空格在‘\0’前一位,这种也不需要计算进去。另
C语言:输入一行字符串统计出英文字母,空格,数字和其他字符的个数
题目要求 输入一行字符串统计出英文字母,空格,数字和其他字符的个数。 程序分析 要统计英文字母,空格,数字和其他字符的个数,则要遇到他们加一。 核心代码如下: while ((c=getchar())!='\n') { if ((c &amp;gt;= 'a' &amp;amp;&amp;amp; c &amp;lt;= 'z')||(c &amp;gt;= 'A' &amp;amp;&amp;amp; c &amp;lt;= 'Z')) { ...
c统计查找的字符串个数
#define _CRT_SECURE_NO_WARNINGS #include #include #include int main() { //char str[1024] = "abcdhahaefghhaha,ijklhaha"; char *str = "abcdhahaefghha\ ha,ijklha\ ha"; char *p; int num=0; //方法一
C++实现分类统计字符串中字符个数
#include using namespace std; int main(int argc, char **argv) { int a,b,c,d,e,len; string str; cout<<"请输入一个字符串:"; getline(cin,str); len=str.length(); a=b=c=d=e=0; for (int i = 0; i < len; i++)
统计字符串中子字符串的个数
使用strstr函数循环查询字符串进行统计#include &amp;lt;stdio.h&amp;gt; #include &amp;lt;string.h&amp;gt; /** * 功能:统计母串p_str包含子串p_child_str的个数 * 入参:p_str:母串 * p_child_str:需要统计的子串 * 返回值:-1 - 入参未NULL,-2 - 子串长度为0,其他 - 统计的个数 **/ in...
C语言之统计输入字符数量
这个程序市委了统计所输入的数字或者英文字母的数字的数量,当然稍加改动便可以统计特殊字符的个数,在此不再冗叙。 代码如下:#include <iostream>using namespace std;int main() { char ch; int numberInt=0,numberChar=0; cout<<"Please input character \n"<<
C语言 字符串 统计字串子母串出现的次数
#include int main(void) { char str[20],substr[20]; int i,j,k,number=0; printf("请输入母串str:"); gets(str); printf("请输入子串substr:"); gets(substr); for(i=0;str[i]!='\0';i++)//从母串开始遍历 { for(j=i,k=
【C】 查找字符串中某个字符出现的次数【两种思路,关于指针】
/* 【题目】 查找字符串中某个字符出现的次数 【解题思路】 使用指针 */ 【法一】 #include &amp;lt;stdio.h&amp;gt; void strn(const char *p, const char chr) { int count = 0,i = 0; while(*(p+i)) { if(p[i] == chr)//字符数组存放在一块内存区域中,按索引找字符,指针本身...
C语言 找出字符串中出现次数最多的字符
网上随便搜了一道简单题,作为第一篇blog,题目如上,代码如下: #include int main(void) { int n=10,count[10]={0,0,0,0,0,0,0,0}; char s[10] = "abacadbb"; puts(s); for(int i=0;i<9;i++) { for(int j=0;j<=i;j++) {
C语言算法--统计字符串中单词的个数
#include #include #include int main(void) { int len ; int i ; int flag = 0 ; int count = 0 ; char buffer[20] = {'\0'} ; gets(buffer); puts(buffer); for(i = 0 ;
c语言 统计数组中不同字符的个数
统计数组中不同字符的个数 思路:用result数组存字符,b为标记,count计数,b数组初始化为0,当result数组中的字符被遍历过后将b改为1,用c数组的字符与result中的字符相比,如果不同且没有遍历过则写入result。  #include main(){ char result[5]; char c[8]={'a','a','a','b','b','c','c','d'
C语言 实现读取文件,并统计每个字符出现的个数
/***************** 实现读取文件,并统计每个字符出现的个数 *****************/ #include &amp;lt;stdio.h&amp;gt; #include &amp;lt;stdlib.h&amp;gt; unsigned long file_size; unsigned int frequency_count[512]; FILE* infilepointer; voi...
Problem C: 数一数每种字符的个数
Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 85  Solved: 36 [Submit][Status][Web Board] Description 输入一个长度不超过10000的字符串,统计其中字符0~9、A~Z、a~z各自出现的次数。 Input 输入一个长度不超过10000的字符串。 Output
字符串去重、统计不同字符种类数问题
1、编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),不在范围内的不作统计。 #include &amp;lt;iostream&amp;gt; #include &amp;lt;string&amp;gt; using namespace std; int main(){ string str; int m,len,count=1; int flag = 0;...
C语言统计一个字符串中单词的个数
假定每个单词用空格隔开。 例子: 输入:how are you! 输出:3 两种方法: 一: #include #include #define SIZE 20 int main() { char str[SIZE]={'\0'}; int count=0; printf("please input the string\n"); gets(str); put
C语言 输入字符并统计出现次数(练习)
从键盘输入一大堆字符串,统计A、B、C、D的出现次数,最后出现次数由高到低输出字母和出现次数。 个人整理如下: #include #include int main(int argc, const char * argv[]) {     //定义字符串     char str[100];     printf("请输入一串字符:\n");  
统计录入字符串的字符总数,单词数和行数
统计录入字符串的字符总数,单词数和行数包括: 字符读取 getchar()函数的使用 *循环使用 UML序列图和流程图 离线写博客 何时停止读取 一些头文件的使用
统计一组字符串中字母,数字,空格的个数(C语言原代码)
资源共享,有什么错误和好的建议请指出 如果没资源分,我可以直接发给你)
统计字符串的某一子串在字符串中的出现次数(C语言实现)
int get_count(char * src,char * dst); /* src 主串 dst 子串 */#include <stdio.h>#include <string.h>int get_count(char *,char *);int main() { char str1[10]="aaaacaaa"; char str2[10]="aa"; int
华为OJ:计算字符串中含有的不同字符的个数
题目描述 编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。输入描述: 输入N个字符,字符在ACSII码范围内。输出描述: 输出范围在(0~127)字符的个数。输入例子: abc输出例子: 3解答1: #include <iostream> #include <vector> #include <algorithm> #inclu