首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Haskell中以整数列表的形式逐行存储用户输入?

在Haskell中,可以使用递归函数来逐行存储用户输入的整数列表。下面是一个示例代码:

代码语言:txt
复制
import Control.Monad

readIntList :: IO [Int]
readIntList = do
  line <- getLine
  if null line
    then return []
    else do
      rest <- readIntList
      return $ read line : rest

main :: IO ()
main = do
  putStrLn "请输入整数列表,每行一个数字(输入空行结束):"
  intList <- readIntList
  putStrLn "用户输入的整数列表为:"
  forM_ intList print

这段代码中,readIntList 函数使用了递归来读取用户输入的整数列表。它首先通过 getLine 函数获取用户输入的一行内容,并将其存储在 line 变量中。然后,它检查 line 是否为空,如果为空则返回一个空的整数列表,表示输入结束;否则,它将 line 解析为整数,并递归调用 readIntList 函数来读取剩余的整数列表。最后,main 函数调用 readIntList 来获取用户输入的整数列表,并使用 forM_ 函数逐行打印出来。

这种方法可以逐行存储用户输入的整数列表,并且可以处理任意长度的列表。在实际应用中,可以根据需要对输入进行验证和处理,例如检查输入是否为合法整数、处理异常情况等。

腾讯云相关产品和产品介绍链接地址:

请注意,以上仅为腾讯云的一些相关产品,其他云计算品牌商也提供类似的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券