Go程序:变量声明、赋值与输出

一、Go源代码
/*
* 功能:演示变量声明、赋值、输出
 */

// assignment.go
package main

import (
    "fmt"
    "math/rand"
)

func main() {
    /* 声明部分 */
    var id int             // 整型
    var p_id *int          // 整型指针
    var score float32      // 浮点型
    var position complex64 // 复数型
    var flag bool          // 布尔型
    var name string        // 字符串
    var arr [10]int        // 整型数组
    var slice []int        // 整型数组切片
    var student struct {
        id    int
        name  string
        sex   string
        age   int
        phone string
    } // 结构体(相似C语言)
    var city map[int]string // 词典(映射),键是整型,值是字符型
    var fact = func(n int) int {
        jc := 1
        for i := 1; i <= n; i++ {
            jc *= i
        }
        return jc
    } // 阶乘函数

    /* 赋值部分 */
    id = 10001
    p_id = &id // 指针p指向变量id
    score = 89.4
    position = 5 + 6i
    flag = true
    name = "张三丰"
    for i := 0; i < 10; i++ {
        arr[i] = rand.Int() % 100
    }
    slice = arr[5:] // 数组arr下标5之后的元素保存到数组切片slice里
    student.id = 101
    student.name = "陈燕文"
    student.sex = "女"
    student.age = 23
    student.phone = "15845451123"
    city = make(map[int]string)
    city[1] = "北京"
    city[2] = "天津"
    city[3] = "上海"
    city[4] = "重庆"

    /* 输出部分 */
    fmt.Println("id =", id)
    fmt.Println("p_id = ", p_id)
    fmt.Println("score =", score)
    fmt.Println("position =", position)
    fmt.Println("name =", name)
    fmt.Println("flag =", flag)
    fmt.Println("arr =", arr)
    fmt.Println("slice =", slice)
    fmt.Println("student =", student)
    fmt.Println("city =", city)
    fmt.Println("5! =", fact(5))
}

二、运行结果

本文分享 CSDN - howard2005。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。数组

相关文章
相关标签/搜索