• powershell 课后习题


    1.从键盘上输入一个字符,判断这个字符是数字,还是大写还是小写字母,还是符号。

    [char]$unknown = Read-Host("请输入一个字符")
    [int]$num = $unknown
    if($num -ge 48 -and $num -le 57){
    Write-Output("输入的字符是数字。")
    }elseif($num -ge 65 -and $num -le 90){
    Write-Output("输入的字符是大写字母。")
    }elseif($num -ge 97 -and $num -le 122){
    Write-Output("输入的字符是小写字母。")
    }else{
    Write-Output("输入的是符号。")
    }

    2.判断一个字符串有多少大小写字母数字符号

    [string]$str = Read-Host("请输入一个字符串")
    [char[]]$char_array = $str.ToCharArray()
    [int]$length = $char_array.Length
    [int]$Up_Length = 0
    [int]$Down_Length = 0
    [int]$Num_Length = 0
    [int]$Sign_Length = 0
    for($i = 0;$i -lt $length;$i++){
    [int]$dec = $char_array[$i]
    if($dec -ge 48 -and $dec -le 57){
    $Num_Length+=1
    }elseif($dec -ge 65 -and $dec -le 90){
    $Up_Length+=1
    }elseif($dec -ge 97 -and $dec -le 122){
    $Down_Length+=1
    }else{
    $Sign_Length+=1
    }
    }
    Write-Output("有{0}个大写字母,有{1}个小写字母,有{2}个数字,有{3}个符号" -f $Up_Length,$Down_Length,$Num_Length,$Sign_Length)

    3.求证水仙花数

    [int]$num_1 = 0
    [int[]]$num_2 = 0,0,0

    for($i = 100;$i -le 999;$i++){
    [string]$i_str = $i
    for($j = 0;$j -lt 3;$j++){
    [int]$num_demo = $i_str.Substring($j,1)
    $num_2[$j] = $num_demo * $num_demo * $num_demo
    $num_1 = $num_2[0] + $num_2[1] + $num_2[2]
    if($i -eq $num_1){
    Write-Output($i)
    }
    }
    }

    4.判断字符串,输入一个字符串,判断字符串是否可以转换成一个有效的数字

    [string]$str = Read-Host("请输入一个字符串")
    [char[]]$char_array = $str.ToCharArray()
    [int]$Length = $str.Length
    #Num定义转成ascll码的整数
    [int]$Num = 0
    #Num_1定义输入的字符串中数字的个数
    [int]$Num_1 = 0
    for($i = 0;$i -lt $Length;$i++){
    $Num = $char_array[$i]
    if($Num -ge 48 -and $Num -le 57){
    $Num_1++
    }
    }
    if($Num_1 -eq $Length){
    Write-Output("该字符串可以转换成数字")
    }else{
    Write-Output("该字符串不可以转换成数字")
    }


    5.打印九九乘法表

    for($i = 1;$i -le 9;$i++){
    for($j = 1;$j -le $i;$j++){
    $z = $i * $j
    Write-Host -NoNewline("{0}*{1}={2} " -f $i,$j,$z)
    }
    Write-Output("")
    }

    6.一个10000以内的整数,它加上100和加上268后都是一个完全平方数,请问这个数是多少

    for($i = 1;$i -lt 10000;$i++){
    $i_100 = $i + 100
    $i_268 = $i + 268
    for($j = 1;$j -lt 100;$j++){
    if($i_100 -eq $j*$j){
    for($k = $j++;$k -lt 100;$k++){
    if($i_268 -eq $k*$k){
    Write-Output($i)
    }
    }
    }
    }
    }

    7.拆分字符串,“网络信息安全”,拆成“网络”,“络信”,“信息”,“息安”,“安全”

    [string]$str = "网络空间安全"
    [char[]]$str_array = $str.ToCharArray()
    [int]$Length = $str_array.Length
    for($i = 0;$i -lt $Length-1;$i++){
    Write-Output($str_array[$i]+$str_array[$i+1])
    }

    8.对3,65,22,102,4进行降序排列,冒泡排序

    [int[]]$Num = 3,65,22,102,4
    [int]$Length = $Num.Length
    for($i = 0;$i -lt $Length -1;$i++){
    for($j = 0;$j -lt $Length -$i -1;$j++){
    if($Num[$j] -lt $Num[$j+1]){
    $temp = $Num[$j]
    $Num[$j] = $Num[$j+1]
    $Num[$j+1] = $temp
    }
    }
    }
    Write-Output($Num)

    9.计算200以内的所有质数

    for($i = 2;$i -lt 1000;$i++){
    for($j = 2;$j -lt $i;$j++){
    if($i%$j -eq 0){
    Break;
    }
    }
    if($i -eq $j){
    Write-Output($i)
    }
    }

    10.打印三角形

     

    [int]$num = Read-Host("请输入一个数字")
    for($i = 0;$i -lt $num;$i++){
    for($j = 0;$j -le $i;$j++){
    Write-HOST -NoNewline ("*")
    }
    Write-Output("")
    }

    [int]$num = Read-Host("请输入一个奇数")
    [int]$num_1 = $num/2
    for($i = 0;$i -lt $num_1;$i++){
    for($j = 1;$j -le $num_1-$i-1;$j++){
    Write-HOST -NoNewline (" ")
    }
    for($j = 0;$j -le $i*2;$j++){
    Write-HOST -NoNewline ("*")
    }

    Write-Output("")
    }

     

  • 相关阅读:
    随机生成手机号,QQ号,姓名...小工具类汇总
    简单的时间格式转换工具类(java)
    判断某个时间点在一个时间段内方法汇总
    AES加密解密代码(key是16位)--java
    Linux下查看CPU、内存、磁盘信息
    idea如何优雅部署项目到weblogic
    weblogic部署项目
    程序员必知的十大基础实用算法及其讲解
    Java开发工具包 ==> Hutool
    java基础-泛型举例详解
  • 原文地址:https://www.cnblogs.com/kyooo/p/13205604.html
Copyright © 2020-2023  润新知