一、题目:

二、C程序:(注意:中文部分是程序注释,如果编译器不支持中文,需要把中文删掉)

 #include <stdio.h>

 int main() {

     int count_letter = ; //保存字母数量
int count_blank = ; //保存空格或回车数量
int count_digit = ; //保存数字数量
int count_other = ; //保存其他符号数量
char c; //保存输入的一个字符,做临时变量使用
int i = ; //循环变量
for(i = ; i< ; i++) {
scanf("%c", &c); //读取用户输入的字符
if( (c>='a' && c<='z') || (c>='A' && c<='Z') ) {
count_letter += ; //字母数量加一,也可以写成 count_letter++;
} else if( c==' ' || c=='\n' ) {
count_blank += ; //空格或回车数量加一
} else if( c<='' && c>='') {
count_digit += ; //数字数量加一
} else {
count_other += ; //其他符号数量加一
}
}
//以下四行是输出结果
printf("letter = %d\n", count_letter);
printf("blank = %d\n", count_blank);
printf("digit = %d\n", count_digit);
printf("other = %d\n", count_other);
return ;
}

我用的编译器是Dev-C++,符合C语言C99标准,如果使用Visual C++ 6 编译上述程序可能会有点问题,改一下格式就行(如果再有问题,告诉我)。

 #include <stdio.h>

 void main() {//int 换成 void
......
//return 0; 删除这一行
}

  

三、参考资料:

  1. ASCII码对照表:http://ascii.911cha.com/
  2. C语言中scanf函数输入回车符的问题: https://blog.csdn.net/cover_sun/article/details/52842727, https://zhidao.baidu.com/question/318275648.html
  3. C语言main函数的写法 https://blog.csdn.net/u012219371/article/details/78964904

18.11.20-C语言练习-根据输入统计字符类型的更多相关文章

  1. [18/11/20]break与continue的区别

    一.普通break 和continue 1.break: break用于强行退出循环,不执行循环中剩余的语句. 2.continue continue 语句用在循环语句体中,用于终止某次循环过程,即跳 ...

  2. 《c程序设计语言》读书笔记--统计字符数

    #include <stdio.h> #define MAXLINE 1000 int getline(char line[],int maxline); void copy(char t ...

  3. 在EditText中限制输入,自定义样式,监听输入的字符,自动换行

    自动获取焦点 <!-- 添加:<requestFocus /> 会自动获取焦点 --> <EditText android:layout_width="matc ...

  4. EditText 限制输入,自定义样式,监听输入的字符,自动换行

    自动获取焦点 <!-- 添加:<requestFocus /> 会自动获取焦点 --> <EditText android:layout_width="matc ...

  5. C语言的基本输入与输出函数(全解)

    C语言的基本输入与输出函数 1.1.1 格式化输入输出函数 Turbo C2.0 标准库提供了两个控制台格式化输入. 输出函数printf() 和scanf(), 这两个函数可以在标准输入输出设备上以 ...

  6. 20道C#练习题(二)11——20题

    11.一个游戏,前20关是每一关自身的分数,1-30关每一关是10分,31-40关,每一关是20分,1-49关,每一关是30分,第50关是100分,输入你现在闯到的关卡数,求你现在拥有的分数.利用if ...

  7. 日本IT行业劳动力缺口达22万 在日中国留学生迎来就业好时机 2017/07/18 11:25:09

    作者:倪亚敏 来源:日本新华侨报 发布时间:2017/07/18 11:25:09     据日本政府提供的数据,日本2018年应届毕业生的“求人倍率”已经达到了1.78倍.换言之,就是100名大学生 ...

  8. C语言:模拟密码输入显示星号

    一个安全的程序在用户输入密码时不应该显示密码本身,而应该回显星号或者点号,例如······或******,这在网页.PC软件.ATM机.POS机上经常看到.但是C语言没有提供类似的功能,控制台上只能原 ...

  9. [CareerCup] 18.11 Maximum Subsquare 最大子方形

    18.11 Imagine you have a square matrix, where each cell (pixel) is either black or white. Design an ...

随机推荐

  1. SQL Server Report Server 报表用户权限T-SQL查询

    /************************************************************************** 查询用户在报表上的权限 ************ ...

  2. Android源代码下载 “Gerrit下载源代码”

    repo init -u ssh://jenkins@gerrit.y:29419/manifest -m k86A.xml 使用-m参数指定具体使用的是k86A.mxl文件 步骤1. curl ht ...

  3. hadoop2-hive

    hadoop2-hive 1.What,Why,How? 1.Hive是数据仓库,在MySQL或其他关系型数据库中存放元数据信息,而把真正的Data存放在HDFS上面. 2.主要使用Hive来对历史数 ...

  4. 操作mysql(import pymysql模块)

    pymysql模块 import pymysql #1.连上数据库.账号.密码.ip.端口号.数据库 #2.建立游标 #3.执行sql #4.获取结果 #5.关闭游标 #6.连接关闭 #charest ...

  5. HTML5_canvas_pen.translate()_

    .save() 和 .restore() 除了会保存之前的样式,还会保存之前的坐标轴 pen.translate(x, y); 将画布的 坐标轴原点(0, 0) 从画布的左上角,移动到 (x, y) ...

  6. javascript对象序列化(对象与JSON字符串的互换)

    前一段时间用到h5的本地存储---需要把某个js对象存储在浏览器的本地存储中,用到了javascript对象的序列化与反序列化 所谓的序列化就是将对象的状态信息转换为可以存储或传输的形式的过程,基本上 ...

  7. css 图片置灰

    .filterGray{ -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(10 ...

  8. mysql 5.7.21 解压版安装配置方法图文教程

    引用:https://www.jb51.net/article/140951.htm 1.首先,你要下载MySQL解压版,下载地址,图解: 2.解压安装包,根据自己的喜好选择路径,我选择的路径是C:\ ...

  9. SQL 约束 索引

    --约束constraint--not null 非空约束create table demo01(empno number(4),ename varchar2(10) not null,job var ...

  10. 6. Scala面向对象编程(基础部分)

    6.1 基本介绍 6.1.1 Scala语言是面向对象的 1) Java时面向对象的编程语言,由于历史原因,Java中海存在着非面向对象的内容:基本类型,null,静态方法等 2) Scala语言来自 ...