加载中…
个人资料
王石川
王石川
  • 博客等级:
  • 博客积分:0
  • 博客访问:19,913
  • 关注人气:6,695
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

7-1 统计数字字符_统计字符中数字字符个数方法

(2025-06-04 08:10:23)

7-1 统计数字字符_统计字符中数字字符个数方法

朋友们大家好,今天要为大家分享的是关于7-1 统计数字字符和统计字符中数字字符个数方法的知识点解析,希望对您有所帮助,接下来开始吧!

本文目录

  1. ...分别统计其中的字母(不区分大小写)、数字字符和其他
  2. 如何用Excel正字计数
  3. 用excel制作表格,我现在要用正字统计一些数量。怎么输入呢

数字,是人类认识世界、表达思想、传递信息的重要工具。在现代社会,统计学作为一门应用广泛的学科,凭借其独特的优势,发挥着越来越重要的作用。本文以“7-1”为例,探讨统计学在现代社会中的应用。

一、什么是“7-1”

“7-1”是一种数据呈现方式,它将数字按照“7”和“1”的比例进行划分。在这种划分方式下,“7”代表整体中的主要部分,而“1”代表整体中的次要部分。这种划分方式具有直观、简洁、易理解的特点,因此在数据分析中得到了广泛的应用。

二、统计学在现代社会中的应用

1. 经济领域

在经济学领域,统计学被广泛应用于宏观经济、微观经济、产业经济等方面。通过对数据的统计和分析,可以揭示经济发展规律、预测经济趋势、优化资源配置等。以下列举几个实例:

(1)宏观经济:GDP增长率、CPI、PPI等宏观经济指标,都是通过统计学方法进行计算和分析的。

(2)微观经济:消费者行为分析、市场占有率、企业盈利能力等,都是基于统计学数据进行研究。

(3)产业经济:产业竞争力分析、产业结构调整、产业政策制定等,都离不开统计学方法的支持。

2. 社会领域

在社会领域,统计学在人口统计、教育、卫生、社会保障等方面发挥着重要作用。以下列举几个实例:

(1)人口统计:通过对人口数据的统计分析,可以了解人口结构、人口流动性、人口老龄化等问题。

(2)教育:通过分析教育数据,可以评估教育质量、教育公平、教育资源配置等问题。

(3)卫生:卫生数据的统计分析,有助于揭示疾病发生原因、评估医疗卫生服务水平、制定公共卫生政策等。

3. 科研领域

在科研领域,统计学为研究者提供了强有力的数据支持。以下列举几个实例:

(1)自然科学:通过对实验数据的统计分析,可以验证科学假设、揭示自然规律。

(2)社会科学:通过对社会调查数据的统计分析,可以了解社会现象、提出社会政策建议。

(3)工程技术:通过统计分析,可以优化工程设计、提高工程质量。

4. 企业管理

在企业领域,统计学在产品研发、生产管理、市场营销等方面发挥着重要作用。以下列举几个实例:

(1)产品研发:通过对市场数据的统计分析,可以了解消费者需求、预测市场趋势,为企业研发新产品提供依据。

(2)生产管理:通过对生产数据的统计分析,可以优化生产流程、提高生产效率。

(3)市场营销:通过分析市场数据,可以制定市场营销策略、提高市场占有率。

统计学在现代社会中具有广泛的应用前景。通过“7-1”这一实例,我们可以看到统计学在各个领域都发挥着举足轻重的作用。在今后的发展过程中,统计学将继续发挥其独特的优势,为人类社会的发展进步贡献力量。

...分别统计其中的字母(不区分大小写)、数字字符和其他

; 题目名称:分类统计字符

; 题目来源:

; 本程序在MASMPlus 1.2集成环境下通过编译,经过调试,运行正确。

Code Segment

Assume CS:Code,DS:Code

; -------------------------------------

; 功能:显示指定地址(Str_Addr)的字符串

; 入口:

; Str_Addr=字符串地址(要求在数据段)

; 用法: Output Str_Addr

; 用法举例:Output PromptStr

Output MACRO Str_Addr

lea dx,Str_Addr

mov ah,9

int 21h

EndM

; -------------------------------------

; 功能:在当前光标位置显示一个字符

; 入口:dl=要显示的字符

Output_Chr proc Near

push ax

mov ah,02h

int 21h

pop ax

ret

Output_Chr Endp

; -------------------------------------

; 功能:显示、输出一个回车、换行

Output_CTLF proc Near

push ax

push dx

mov ah,02h

mov dl,0dh

int 21h

mov dl,0ah

int 21h

pop dx

pop ax

ret

Output_CTLF Endp

; -------------------------------------

; 功能:把AX中的二进制无符号数转换成显式的十进制ASCII码,并送显示屏显示

; 入口:AX=二进制数

; 出口:在当前光标位置显示转换后的ASCII码数字

Unsi_Dec_ASCII Proc Near

push dx

push bx

push di

mov bx,10

lea di,@@Temp_Save[5]

mov BYTE PTR [di],'$'

dec di

cld

@@Divide: xor dx,dx

div bx

or dl,30h

mov [di],dl

dec di

test ax,ax

jnz @@Divide

inc di

push di

pop dx

mov ah,9

int 21h

pop di

pop bx

pop dx

ret

@@Temp_Save db 6 dup(?)

Unsi_Dec_ASCII EndP

; -------------------------------------

; 功能:键盘输入一个字符,若输入的是'y'或'n'(不分大小写),则显示并返回

; 入口:无

; 出口:若输入的是'y',进位标志置位;若输入的是'n',进位标志复位。

Yes_or_No proc Near

push dx

push ax

@@Input_Chr: mov ah,7 ;不带回显的键盘输入

int 21h

mov dl,al

and al,0dfh

cmp al,'Y'

jnz $+5

stc

jmp $+7

cmp al,'N'

jnz @@Input_Chr

clc

mov ah,2

int 21h

pop ax

pop dx

ret

Yes_or_No Endp

; -------------------------------------

Letters dw ? ;字母个数

Dights dw ? ;数字个数

Others dw ? ;其它字符个数

Letters_sum db 13,10,'Letters: $'

Dights_sum db 13,10,'Digits : $'

Others_sum db 13,10,'Others : $'

Prompt_Str db 'Please input a string:$'

Prompt_Con db 13,10,13,10,'Continue(Y/N)?$'

Press_Key db 7,13,10,13,10,'The complated. Press any key to exit...$'

Start: push cs

pop ds

push cs

pop es

; -------------------------------------

; 从键盘上连续输入一串字符(字符个数不超过80个,该字符串用回车符结束)

Input_Str: Output Prompt_Str ;提示输入一串字符

lea dx,Buffer ;输入字符串缓冲区地址

mov ah,0ah ;从键盘接收字符串

int 21h

call Output_CTLF ;输出一个回车、换行

; -------------------------------------

; 按字母、数字、其它字符分类统计计数

lea si,Buffer[1] ;实际输入的字符数地址

lodsb ;读入实际输入的字符数

xor ah,ah

mov cx,ax ;实际输入的字符数送计数器

jcxz Continue

mov Letters,0 ;字母计数单元清零

mov Dights,0 ;数字计数单元清零

mov Others,0 ;其它字符计数单元清零

Classify: lodsb ;当前字符→AL

cmp al,'0' ;当前字符<'0'?

jb Other_Chr ;小于,转去按其它字符处理

cmp al,'9' ;当前字符>'9'?

ja $+8 ;大于,转去判断是否字母

inc Dights ;数字计数

jmp Other_Chr[4]

mov ah,al ;al→ah,用于判断是否字母

and ah,0dfh ;屏蔽第5位,按大写字母处理

cmp ah,'A' ;当前字符<'A'?

jb Other_Chr ;小于,转去按其它字符处理

cmp ah,'Z' ;当前字符>'Z'?

ja Other_Chr ;大于,转去按其它字符处理

inc Letters ;字母计数

jmp $+6

Other_Chr: inc Others ;其它字符计数

loop Classify

; -------------------------------------

; 显示分类统计结果

Output Letters_sum

mov ax,Letters ;字母个数

call Unsi_Dec_ASCII ;把AX中的二进制无符号数转换成显式的十进制ASCII码,并送显示屏显示

Output Dights_sum

mov ax,Dights ;数字个数

call Unsi_Dec_ASCII

Output Others_sum

mov ax,Others ;其它字符个数

call Unsi_Dec_ASCII

Continue: Output Prompt_Con

call Yes_or_No

jnc Exit_Proc

call Output_CTLF

call Output_CTLF

jmp Input_Str

; -------------------------------------

Exit_Proc: Output Press_Key ;提示操作完成,按任意键结束程序

mov ah,1

int 21h

mov ah,4ch ;结束程序

int 21h

Buffer db 80 ;字符串缓冲区

Code Ends

END Start ;编译到此结束

补充回答:这个就是我自己编的,何以这样不信任人呢?你又是根据什么判断我这个不是我自己编的呢?

如何用Excel正字计数

比如A列姓名,B列是你划正的列,C列统计票数

B列你每记一票,输入单个字符一次比如每一票输入一个1

C2输入=len(B2) 公式下拉

这种方法的缺点是输入字符时不方便。

用VBA解决就很方便了,您可以设置点击该姓名一次,统计列自动增加1,如果误点,可以设置击点该姓名行统计列单元格就减去1,这样就能够准确的统计,还可以设定列来记录每读一票划上一竖而统计列直接统计数字。

代码如下

把代码复制到您的表格VBA中的统计中下

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim t As String

t = "|"

If Target.Row > 1 And Target.Column = 1 And Target.Count = 1 Then '指定点击的列为A列且只选一个单元格从第二行开始(第一行标题行)

Cells(Target.Row, 3) = Cells(Target.Row, 3) + 1 '每点姓名一次,C列统计+1

Cells(Target.Row, 2) = Application.Rept(t, Cells(Target.Row, 3)) '每点姓名一次,B列增加一竖

Cells(Target.Row, 2).Select

End If

If Target.Row > 1 And Target.Column = 3 And Target.Count = 1 Then '指定点击C列且只选一个单元格从第二行开始

Cells(Target.Row, 3) = Cells(Target.Row, 3) - 1 '每点击统计一次,统计减1

If Cells(Target.Row, 3) > 0 Then

Cells(Target.Row, 2) = Application.Rept(t, Cells(Target.Row, 3)) '根据统计列划竖线

Else

Cells(Target.Row, 2) = "" '统计为<1时B列为空

End If

End If

End Sub

用excel制作表格,我现在要用正字统计一些数量。怎么输入呢

比如A列姓名,B列是你划正的列,C列统计票数

B列你每记一票,输入单个字符一次比如每一票输入一个1

C2输入=len(B2) 公式下拉

这种方法的缺点是输入字符时不方便。

用VBA解决就很方便了,您可以设置点击该姓名一次,统计列自动增加1,如果误点,可以设置击点该姓名行统计列单元格就减去1,这样就能够准确的统计,还可以设定列来记录每读一票划上一竖而统计列直接统计数字。

代码如下

把代码复制到您的表格VBA中的统计中下

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim t As String

t = "|"

If Target.Row > 1 And Target.Column = 1 And Target.Count = 1 Then '指定点击的列为A列且只选一个单元格从第二行开始(第一行标题行)

Cells(Target.Row, 3) = Cells(Target.Row, 3) + 1 '每点姓名一次,C列统计+1

Cells(Target.Row, 2) = Application.Rept(t, Cells(Target.Row, 3)) '每点姓名一次,B列增加一竖

Cells(Target.Row, 2).Select

End If

If Target.Row > 1 And Target.Column = 3 And Target.Count = 1 Then '指定点击C列且只选一个单元格从第二行开始

Cells(Target.Row, 3) = Cells(Target.Row, 3) - 1 '每点击统计一次,统计减1

If Cells(Target.Row, 3) > 0 Then

Cells(Target.Row, 2) = Application.Rept(t, Cells(Target.Row, 3)) '根据统计列划竖线

Else

Cells(Target.Row, 2) = "" '统计为<1时B列为空

End If

End If

End Sub

今天的分享围绕7-1 统计数字字符和统计字符中数字字符个数方法展开,希望对您有所帮助,再见!

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有