String 阅读一些字符串并打印GO中最长字符串的最佳方法
我快疯了。 我正试图编写一个程序,读取一些字符串(在我的例子5中)并打印最长的字符串。 我在这里搜索过,但我什么都不喜欢String 阅读一些字符串并打印GO中最长字符串的最佳方法,string,go,design-patterns,find,match,String,Go,Design Patterns,Find,Match,我快疯了。 我正试图编写一个程序,读取一些字符串(在我的例子5中)并打印最长的字符串。 我在这里搜索过,但我什么都不喜欢 package main import "fmt" func main() { var t1, t2, t3, t4, t5 string fmt.Scan(&t1, &t2, &t3, &t4, &t5) var l1, l2, l3, l4, l5 int var max in
package main
import "fmt"
func main() {
var t1, t2, t3, t4, t5 string
fmt.Scan(&t1, &t2, &t3, &t4, &t5)
var l1, l2, l3, l4, l5 int
var max int = -50000
l1 = len(t1)
l2 = len(t2)
l3 = len(t3)
l4 = len(t4)
l5 = len(t5)
var longest string = ""
if l1 > max {
l1 = max
}
if l2 > max {
l2 = max
}
if l3 > max {
l3 = max
}
if l4 > max {
l4 = max
}
if l5 > max {
l5 = max
}
fmt.Println(max)
}
在这里,我编写了简单的代码来实现这一点。按照上面所说的
Flimzy
进行操作,进一步了解Go循环
package main
import "fmt"
func main() {
t := make([]string, 5)
//scan strings first
for i := range t {
fmt.Scan(&t[i])
}
var longest string = ""
// compare longest
for _, s := range t {
if len(longest) < len(s) {
longest = s
}
}
fmt.Println(`longest := `,longest)
}
主程序包
输入“fmt”
func main(){
t:=make([]字符串,5)
//先扫描字符串
对于i:=范围t{
模式扫描(&t[i])
}
var longest string=“”
//比较长
对于u,s:=范围t{
如果len(最长)
您可以减少第一个循环,并按下面的方式进行。扫描字符串并在一个循环中进行比较
package main
import "fmt"
func main() {
t := make([]string, 5)
var longest string = ""
for i, _ := range t {
fmt.Scan(&t[i])
if len(longest) < len(t[i]) {
longest = t[i]
}
}
fmt.Println(`longest := `,longest)
}
主程序包
输入“fmt”
func main(){
t:=make([]字符串,5)
var longest string=“”
对于i,u:=范围t{
模式扫描(&t[i])
如果len(最长)
为什么不使用循环呢?我想,但我不知道如何将其应用到代码中。那么您可能想从“关于流量控制”一节开始。这项作业不是在倒退吗<代码>l1=最大值。你想追踪最大的最大值,所以你必须在某个时候更新它。(将其固定在5个位置),您不必将max
设置为-5000;0就可以了。5000让我们觉得那里有什么特别的东西。