go 的fmt.Scanf(os.stdin)输入后,会自动携带/r/n

点击查看代码
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	var str string
	buff := bufio.NewReader(os.Stdin)
	str, _ = buff.ReadString('\n')
	str = str[0:len(str)-1]
	digitCnt := 0
	alphabetCnt := 0
	whitespaceCnt := 0
	otherCnt := 0
	for _, item := range str {
		if ' ' == item {
			whitespaceCnt++
		} else if '0' <= item && item <= '9' {
			digitCnt++
		} else if ('a' <= item && item <= 'z') || ('A' <= item && item <= 'Z') {
			alphabetCnt++
		} else {
			otherCnt++
		}
	}
	fmt.Printf("Alphabet Count: %d\n", alphabetCnt)
	fmt.Printf("Whitespace Count: %d\n", whitespaceCnt)
	fmt.Printf("Digital Count: %d\n", digitCnt)
	fmt.Printf("Other Count: %d\n", otherCnt)
}
posted @   ty1539  阅读(75)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示