golang流程控制函数练习题

题目
有 0,1,2,3,4 这四个数字,能组成多少个互不相同且无重复数字的三位数? 都是多少?

package main

import "fmt"
//定义一个函数
func num_tolol() {
	sum := 0
	for i := 1; i < 5; i++ {                 //采用循环的方式注意0不能在首位
		for j := 0; j < 5; j++ {
			for k := 0; k < 5; k++ {
				if i != j && j != k && i != k {
					sum++

				}
			}
		}
	}
	fmt.Printf("共有方案: %v种", sum)
}
func main() {

	num_tolol()
}

.
题目
企业发放的奖金根据利润提成。利润0低于或等于 10 万元时,奖金可提成 10%,利润高于 10 万元,低于 20 万元,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可提成 7.5%。
20 万到 40 万之间时,高于 20 万元的部分,可提成 5%;40 万到 60 万之间时高于 40 万元的部分,可提成 3%;60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,高于 100 万元时,超过 100 万元的部分按 1% 提成
从键盘输入当月利润1,求应发放奖金总数?

package main

import (
	"fmt"
)

func main() {
	var I float32
	var bonus float32
	fmt.Print("输入利润:")
	fmt.Scanf("%f\n", &I)
	switch {
	case I > 1000000:
		bonus = (I - 1000000) * 0.01
		//fallthrough 表示穿透,如果满足CASE的条件则会向下执行一个case
		fallthrough
	case I > 600000:
		bonus += (I - 600000) * 0.015

		fallthrough
	case I > 400000:
		bonus += (I - 400000) * 0.03

		fallthrough
	case I > 200000:
		bonus += (I - 200000) * 0.05

		fallthrough
	case I > 100000:
		bonus += (I - 100000) * 0.075

		fallthrough
	default:
		bonus += I * 0.1
	}
	fmt.Printf("提成总计:%f\n", bonus)
}

题目
输入某年某月某日,判断这一天是这一年的第几天?

package main

import (
	"fmt"
)

func main() {

	var y, m, d int = 0, 0, 0
	var days int = 0
	fmt.Printf("请输入年月日\n")
	fmt.Scanf("%d%d%d\n", &y, &m, &d)
	fmt.Printf("%d 年 %d 月 %d 日", y, m, d)
	switch m {
	case 12:
		days += d
		d = 30
		fallthrough
	case 11:
		days += d
		d = 31
		fallthrough
	case 10:
		days += d
		d = 30
		fallthrough
	case 9:
		days += d
		d = 31
		fallthrough
	case 8:
		days += d
		d = 31
		fallthrough
	case 7:
		days += d
		d = 30
		fallthrough
	case 6:
		days += d
		d = 31
		fallthrough
	case 5:
		days += d
		d = 30
		fallthrough
	case 4:
		days += d
		d = 31
		fallthrough
	case 3:
		days += d
		d = 28
		if (y%400 == 0) || (y%4 == 0 && y%100 != 0) {
			d += 1
		}
		fallthrough
	case 2:
		days += d
		d = 31
		fallthrough
	case 1:
		days += d
	}
	fmt.Printf("是今年的第 %d 天!\n", days)
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值