当前位置:网站首页>分类统计字符个数 (15 分)
分类统计字符个数 (15 分)
2022-06-11 22:18:00 【小言同学Y】
习题6-1 分类统计字符个数 (15 分)
本题要求实现一个函数,统计给定字符串中英文字母、空格或回车、数字字符和其他字符的个数。
函数接口定义:
void StringCount( char s[] );
其中 char s[] 是用户传入的字符串。函数StringCount须在一行内按照
letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数
的格式输出。
裁判测试程序样例:
#include <stdio.h>
#define MAXS 15void StringCount( char s[] );
void ReadString( char s[] ); /* 由裁判实现,略去不表 */int main()
{
char s[MAXS];ReadString(s);
StringCount(s);return 0;
}/* Your function will be put here */
输入样例:
aZ &
09 Az
输出样例:
letter = 4, blank = 3, digit = 2, other = 1
void StringCount( char s[] ){
int i;
int letter=0,digit=0,blank=0,other=0;
for(i=0;i<strlen(s);i++){
if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z'){
letter++;
}else if(s[i]>='0'&&s[i]<='9'){
digit++;
}else if(s[i]==' '||s[i]=='\n'){
blank++;
}else{
other++;
}
}
printf("letter = %d, blank = %d, digit = %d, other = %d",letter,blank,digit,other);
}习题8-9 分类统计各类字符个数 (15 分)
本题要求实现一个函数,统计给定字符串中的大写字母、小写字母、空格、数字以及其它字符各有多少。
函数接口定义:
void StringCount( char *s );
其中 char *s 是用户传入的字符串。函数StringCount须在一行内按照
大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数
的格式输出。
裁判测试程序样例:
#include <stdio.h>
#define MAXS 15void StringCount( char *s );
void ReadString( char *s ); /* 由裁判实现,略去不表 */int main()
{
char s[MAXS];ReadString(s);
StringCount(s);return 0;
}/* Your function will be put here */
输入样例:
aZ&*?
093 Az
输出样例:
2 2 1 3 4
void StringCount( char *s ){
int i;
int letter1=0,letter2=0,digit=0,blank=0,other=0;
for(i=0;i<strlen(s);i++){
if(s[i]>='A'&&s[i]<='Z'){
letter1++;
}else if(s[i]>='a'&&s[i]<='z'){
letter2++;
}else if(s[i]>='0'&&s[i]<='9'){
digit++;
}else if(s[i]==' '){
blank++;
}else{
other++;
}
}
printf("%d %d %d %d %d",letter1,letter2,blank,digit,other);
}总结
1、熟练掌握数组与指针的相关知识;
2、熟练掌握数组作为函数的参数在函数中的应用,指针作为函数的参数在函数中的应用;
3、对数组和指针的知识掌握的很熟练时,会发现这两个题目其实是一样的写法。
边栏推荐
- 69. square root of X
- Custom implementation offsetof
- Players must read starfish NFT advanced introduction
- C language implements eight sorts (3)
- 超标量处理器设计 姚永斌 第2章 Cache --2.4 小节摘录
- R language book learning 03 "in simple terms R language data analysis" - Chapter 10 association rules Chapter 11 random forest
- Addition without addition, subtraction, multiplication, Division
- 机器学习之线性回归简单实例
- 如果重来一次高考,我要好好学数学!
- Conception du Processeur superscalaire Yao yongbin chapitre 2 cache - - sous - section 2.4 extrait
猜你喜欢

leetcode 257. Binary Tree Paths 二叉树的所有路径(简单)

机器学习之Logistic回归简单实例

Huawei equipment configuration hovpn

电脑强制关机 oracle登录不上

Uncover the secret of the popular app. Why is it so black

Tkinter学习笔记(三)

高考结束,人生才刚刚开始,10年职场老鸟给的建议

leetcode 257. Binary tree paths all paths to a binary tree (simple)

Popular science | what are the types of NFT (Part 1)

What is deadlock? (explain the deadlock to everyone and know what it is, why it is used and how to use it)
随机推荐
Explain asynchronous tasks in detail: the task of function calculation triggers de duplication
How to adjust the font blur of win10
On the night of the joint commissioning, I beat up my colleagues
Go IO module
[niuke.com] ky41 put apples
Superscalar processor design yaoyongbin Chapter 2 cache -- Excerpt from subsection 2.4
Addition without addition, subtraction, multiplication, Division
打印机无法打印测试页是什么原因
启牛商学院送华泰账户安不安全?真的吗
MATLAB点云处理(二十五):点云生成 DEM(pc2dem)
R language book learning 03 "in simple terms R language data analysis" - Chapter 8 logistic regression model Chapter 9 clustering model
[Yu Yue education] Yancheng Normal University Advanced Algebra reference
[today in history] June 11: the co inventor of Monte Carlo method was born; Google launched Google Earth; Google acquires waze
二叉树的基本操作与题型总结
Huawei equipment configuration h-vpn
[Chongqing Guangdong education] college physics of Xiangtan University: mechanical and thermal reference materials
Popular science | what are the types of NFT (Part 1)
Glory earbud 3 Pro with three global first strong breakdowns flagship earphone Market
Players must read starfish NFT advanced introduction
3.2 测试类的命名规则