来自 go程序设计语言 一书

源博客地址go程序设计语言练习题

练习题3.10 编写一个非递归的comma函数,运用bytes.Buffer,而不是简单的字符串拼接

package mainimport ("bytes""fmt"
)func main() {fmt.Println(comma("1234567889988"))}func comma(s string) string {var newByte byte = ','n := len(s)buf := bytes.NewBuffer([]byte{})if n <= 3 {return s}for i := 0; i < n; i++ {if (n-i)%3 == 0 && i != 0 {buf.WriteByte(newByte)}buf.WriteByte(s[i])}return buf.String()}

练习4.3 重写函数reverse,使用数组指针作为参数而不是slice

package mainimport ("fmt"
)func main() {var arr [7]int = [7]int{1, 2, 3, 6, 48, 299, 4990}reverse(&arr)fmt.Println("In main(), arr values:", arr)}func reverse(arr *[7]int) {for i, j := 0, len(*arr)-1; i < j; i, j = i+1, j-1 {(*arr)[i], (*arr)[j] = (*arr)[j], (*arr)[i]}
}

练习4.5,编写一个就地处理函数,用于去 除[]string slice 中相邻的重复字符串元素

package mainimport ("fmt"
)func main() {x := []int{1, 1, 2, 3, 4, 4, 4, 5, 6, 6, 7, 7}x = remove(x)fmt.Printf("%d", x)
}func remove(slice []int) []int {for i := range slice {if i > len(slice)-1 {return slice}fmt.Printf("%d\n", slice)if i < len(slice)-1 && slice[i] == slice[i+1] {copy(slice[i:], slice[i+1:])slice = slice[:len(slice)-1]fmt.Printf("%d \n", slice)return remove(slice)}}return slice}

go程序设计语言练习题相关推荐

  1. java语言程序设计答案_《java语言程序设计》练习题及答案

    <java语言程序设计>练习题及答案 JAVA 语言程序设计题及部分答案 一.单选题:(每题1分)下列各题A).B).C).D)四个选项中, 只有一个选项是正确的,请将正确选项的标记写在题 ...

  2. C 程序设计语言——第四章练习题

    C 程序设计语言第二版--第四章练习题 1. Write the function strindex(s,t) which returns the position of the rightmost ...

  3. c语言程序设计函数题,C语言程序设计函数练习题及参考答案

    <C语言程序设计函数练习题及参考答案>由会员分享,可在线阅读,更多相关<C语言程序设计函数练习题及参考答案(60页珍藏版)>请在人人文库网上搜索. 1.C语言程序设计练习题及参 ...

  4. c语言程序设计函数题,C语言程序设计函数练习题及参考答案.doc

    C语言程序设计函数练习题及参考答案.doc C 语言程序设计练习题及参考答案 1. 定义一个函数 int funint a,int b,int c, 它的功能是 若 a,b,c 能构成等边三角形函数返 ...

  5. c语言中1%3c%3c2 什么意思,c语言练习题

    篇一:C语言考试题库及答案 C语言理论上机考试选择题部分(共200题,仅针对11级定向专业) 1.下面程序的输出是___D______ #include void main() { int k=11; ...

  6. 我们利用计算机解决问题时第一步应该,算法与程序设计综合评价练习题

    算法与程序设计综合评价练习题 一.利用计算机解决问题的基本过程 判断题: 1.一个算法有一个或多个输出,但可以没有输入.()参考答案:正确. 2.我们常说的程序设计语言就是程序设计.()参考答案:错误 ...

  7. 如何用计算机编程算题,计算机二级Web程序设计章节练习题

    计算机二级Web程序设计章节练习题 二级定位为程序员,考核内容包括公共基础知识和程序设计.所有科目对基础知识作统一要求,使用统一的公共基础知识考试大纲和教程.这是小编提供的计算机二级Web程序设计章节 ...

  8. vb编写一个计算机配置选择程序,2016计算机二级《VB程序设计》练习题及答案

    2016计算机二级<VB程序设计>练习题及答案 一.选择题 1.以下能够触发文本框Change事件的操作是(C) A.文本框失去焦点 B.文本框获得焦点 C.设置文本框的焦点 D.改变文本 ...

  9. 进阶 c程序设计语言,C程序设计进阶

    你将学到什么 Computer Display Standard C Programming C++ 课程概况 如果说学习过<计算导论与C语言基础>,你已经迈入了C语言的殿堂,那么< ...

最新文章

  1. TensorRT Samples: MNIST(serialize TensorRT model)
  2. BZOJ3992:[SDOI2015]序列统计——题解
  3. Win7下U盘安装Ubuntu14.04双系统
  4. DCMTK:DcmAttributeMatching的单元测试
  5. 最吸量的手游ICON设计参考资料
  6. 使用git提交项目到码云
  7. opencv4.4.0函数手册_【文档更新】发布100ask_imx6ull用户手册V2.0和全新烧写工具
  8. 电商首焦素材的万能构图模板
  9. SharePoint 2010 整合Sil“.NET研究”verlight 4应用 - 任务管理
  10. sql语句区分大小写吗?
  11. OpenCV 基本模块
  12. mysql日期为00_MySQL 8.0.13设置日期为0000-00-00 00:00:00时出现的问题解决
  13. python 清华镜像_树莓派raspberry4B入坑指南 part-1 virtualenv安装python
  14. 用友账套和报表服务器显示不同,用友T3ufo报表提示“服务器出现意外情况”
  15. java经纬度度分秒转换为小数点格式
  16. KDD 2022论文合集(持续更新中)
  17. 听说程序员普遍缺乏数据结构,惊得我熬了一宿滋味浓郁的数据结构,滋一口回味悠长(建议珍藏)
  18. Oracle 中数据类型变更无效 ---ora-22858:数据类型的变更无效 for clod
  19. 简单了解Django应用app及分布式路由
  20. 中国文化产业基地(园区)投资战略规划与未来发展研究报告2021年版

热门文章

  1. (SQL入门经典+SQL必知必会+视频)笔记之一
  2. (一)深度学习项目代码结构
  3. linux 正点原子ov5640_【正点原子FPGA连载】第二十四章OV5640摄像头HDMI显示-摘自【正点原子】领航者 ZYNQ 之嵌入式开发指南 (amobbs.com 阿莫电子论坛)...
  4. [UE4]如何下载并编译UE4源码
  5. 神秘微信短信发送技术准备
  6. android m和6.0的区别吗,清甜棉花糖:安卓M/Android 6.0上手体验评测
  7. 使用DevExpress Reports和PDF Viewer创建AcroForm Designer
  8. Jave概述及变量总结
  9. python123测验5随机密码生成_基于社会工程学的弱口令密码字典生成工具
  10. U盘病毒Global.exe专杀