前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >那些年我们一起忘掉的C (七).字符统计

那些年我们一起忘掉的C (七).字符统计

作者头像
franket
发布2021-10-18 10:52:22
3010
发布2021-10-18 10:52:22
举报
文章被收录于专栏:技术杂记

前言

多重分支的选择语句,可以用来进行统计


概要


字符串统计

输入一行字符串,找出其中大写字母、小写字母、数字以及其他字符的个数

代码注解

代码语言:javascript
复制
#include <stdio.h>
#define LENGTH 40 

main()
{
	int upcase=0,lowcase=0,num=0,othercase=0; //定义四个整型变量,分别用来存储大写,小写,数字和其它字符的个数,并且赋初值0
	char c[LENGTH],*p; //定义一个字符型数组用来存储输入的字符串,然后定义一个指针来对这个字符数组进行操作
	printf("please input a string (less then %d chars):\n",LENGTH);
	scanf("%s",c); //将输入的字符串存储到c数组中
	for(p=c;*p != '\0';p++) //使用指针p遍历c数组中字符串的每个字符,字符串在数组中,这里容易出错的是,应该使用 *p 来与'\0' 进行比较,而不是p,*p代表的是p所指示的内容,p代表的是一个地址,p 与 '\0' 这个字符串进行比较常常不报错,但是会产生意想不到的结果
	{
		if (*p >= 'A' && *p <= 'Z') upcase++;  //如果是大写字母,就将upcase加一
		else if(*p >= 'a' && *p <= 'z')lowcase++; //如果是小写字母,就将lowcase加一
		else if(*p >= '0' && *p <= '9')num++;  //如果是数字,就将num加一
		else othercase ++;	//如果是其它,就将othercase加一
	}
	printf(" total upcase is :%d\n total lowcase is :%d\n total number is :%d\n total othercase is :%d\n",upcase,lowcase,num,othercase); //将结果进行打印
	return 0;
}

思路

将输入字符串进行保存,然后遍历,逐个判断累计

基础知识点

  • 数组的定义
  • 指针的用法
  • 输入输出函数的用法
  • 多重分支的选择

原文地址

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 概要
    • 字符串统计
      • 代码注解
      • 思路
      • 基础知识点
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档