请问这是什么问题,为什么进入死循环

liF_e · · 2409 次点击
您好,谢谢解答,第一个溢出的问题弄明白了,但是第二个问题我还是不明白为什么,我之前也用过“fmt.Scanln”,可以达到我想要的效果,但是为什么“fmt.Scanf”就不行了呢?
#2
更多评论
第一个问题,把 k i 都改成 int,否则如果定义 k 为 uint,第一次循环的时候,k = -1 就会溢出。 第二个问题,把 fmt.Scanf 改成 fmt.Scanln
#1
Scanf从标准输入扫描文本,根据format 参数指定的格式将成功读取的空白分隔的值保存进成功传递给本函数的参数。 此处的空白符不包括换行符。程序把换行符也当成了一个输入
#3