C语言实现动态字符串,并且统计大小写

#include<stdio.h>

int main(int argc, char * argv[])
{
char *p;
char str[100];
int n=10;
int len;
int count_upper=0;
int count_lower=0;
int count_num=0;
printf("input string:\n");
p=(char*)malloc(sizeof(char)*n);
gets(str);
len=strlen(str)+1;
if(len>n)
{
p=(char*)realloc(p,sizeof(char)*len);
}
strcat(p,str);
printf("%s\n",p);
while(*p!=NULL)
{
if(*p>=65 && *p<=90)
{
count_upper+=1;
}
if(*p>=97 && *p<=122)
{
count_lower+=1;
}
*p++;
}

printf("%d\n",count_lower);
printf("%d\n",count_upper);
}

时间: 2024-10-15 04:02:04

C语言实现动态字符串,并且统计大小写的相关文章

c语言输入一个字符串,统计其字母,数字和其他字符的个数,并以柱状图输出

#include<stdio.h>int main(int arge,char *argv[]){ char ch; int alp=0,num=0,oth=0,len,alp_start,num_start,oth_start,i; while((ch=getchar())!=-1) { if(ch>='0'&&ch<='9') num++; else if((ch>='a'&&ch<='z')||(ch>='A'&&am

小白的Redis学习(一)-SDS简单动态字符串

本文为读<Redis设计与实现>的记录.该书以Redis2.9讲解Redis相关内容.请注意版本差异. Redis使用C语言实现,他对C语言中的char类型数据进行封装,构建了一种简单动态字符串(以下简称SDS),该字符串的结构如下 struct sdshdr{ //记录buf数组中已使用字节的数量 //获取字符串的长度时,就是直接返回的这个字段的值 int len; //记录buf数组中未使用字节的数量 int free; //字节数组,用于保存字符串 char buf[]; } SDS遵循

Swift语言指南(十)--字符串与字符

原文:Swift语言指南(十)--字符串与字符 字符串是一段字符的有序集合,如"hellow,world"或"信天翁".Swift 中的字符串由 String 类型表示,对应着 Character 类型值的集合. Swift 中的 String 类型为你的编程提供了一个高速的,兼容 Unicode规范 的文本处理方式.Swift 创建和处理字符串的语法轻量可读,与 C 语言的字符串语法颇为相似.字符串的拼接非常简单,只需将两个字符串用 + 运算符相加.字符串的值是否

静态语言和动态语言

基本概念 静态语言(强类型语言) 静态语言是在编译时变量的数据类型即可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型. 例如:C++.Java.Delphi.C#等. 动态语言(弱类型语言) 动态语言是在运行时确定数据类型的语言.变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型. 例如PHP/ASP/Ruby/Python/Perl/ABAP/SQL/JavaScript/Unix Shell等等. 强类型定义语言 强制数据类型定义的语言.也就是说,一旦一个变量被

R语言学习(5)-字符串和因子

字符串和因子 1.字符串 创建字符串 > c("HELLO","WORLD") [1] "HELLO" "WORLD" 使用paste函数连接字符串 > paste(c("hello","hi"),"world") [1] "hello world" "hi world" > paste(c("hel

python语言学习8——字符串和编码

Unicode编码 计算机只能处理数字,如果要处理文本,就必须把文本转化为数字才能处理 有许多编码标准,但是不同的编码标准有时候会混乱,所以Unicode应运而生 Unicode把所有语言统一到一套编码里,这样就不会再有乱码问题 ASCII编码和Unicode编码的区别: ASCII编码是1个字节,而Unicode编码通常是2个字节. 字母A用ASCII编码是十进制的65,二进制的01000001: 字符0用ASCII编码是十进制的48,二进制的00110000,注意字符'0'和整数0是不同的:

Swift语言—有趣的字符串连接、数组、字典

字符串链接:Swift语言中的字符串连接方式本人觉得非常的有趣,变量连接需要用右斜杠,并且变量名要括起来 “\(变量名)”,后面的字符串连接分别用逗号 ‘ , ’ 隔开 数组: Var arr = [“Hello” , “adong” , 100 , 2 , 6] Println(arr) Var arr1 = []                    //声明空的数组 Var arr2 = String[]()    //声明空的数组,特定string类型 字典: Var dict = [“

自已动手写Redis【简单动态字符串序列一】

第一章 简单动态字符串 2.1 引言 字符串String是程序设计中最为常见的一种数据结构,也是最为重要的一种数据结构,Hello World!这个最为精典的程序,是绝大部份人学习一种程序设计语言的入门程序,在这个最为精典的入门程序中,Hello World!就是字符串类型,字符串可以用于软件中信息的提醒.保存等,Redis中key都是String类型的,因此了解String类型对于我们了解Redis以及动手写Redis都是非常有益的. 2.2 字符串基本概念 以上是我们最为熟悉的Hello W

Java语言中的---字符串

day09 Java语言中的---字符串 一.字符串概述: 字符串在程序中是一个非常重要的知识点,在处理一系列程序的时候都会定义一些字符串来使用.下面我们就来看看如何定义和使用一个字符串. 二.字符串(String): 1.字符串的分类:字符串根据能否可以改变被分为常用的三种, (1)"String"类:这个类是Java本身自带的一个类,无需定义.可以直接使用,但是当你在操作这个类的时候你就可以直接创建实例.同时这也是一个不可变的类,也就是说你对某个字符串新增或者删除时,原来的这个字符