《linux环境程序设计》上机测试题

@江南大学linux期末上机题

1、编写一个shell脚程程序,参数为大于20的正整数。先检查参数是否符合要求。如果不符合要求,请给出提示;如何符合要求,分别输出其与1到10的乘积。

#!/bin/bash
sum=1;
if (($1>20))
then
    for((i=1;i<=10;i++))
    do  let "sum=$1*i"
        echo "$i*$1==$sum"
    done
else echo "输入参数不满足大于20"
fi

运行: 

 2、编写一个shell脚本。该程序能接受用户从键盘输入的10个整数,然后求其总和、最大值以及最小值。

#!/bin/bash

# 初始化变量
sum=0
max=0
min=0

# 循环读取用户输入的10个数
for (( i=1; i<=10; i++ ))
do
    echo "请输入第 $i 个数:"
    read num

    # 检查用户输入是否为数字
    if ! [[ "$num" =~ ^[0-9]+$ ]]
    then
        echo "请输入一个数字"
        i=$((i-1))
        continue
    fi

 # 求和、最大值和最小值
    (( sum+=num ))
    if [[ $i -eq 1 ]]
    then
        max=$num
        min=$num
    else
        if (($num > $max))
        then
            max=$num
        fi
        if (($num < $min))
        then
            min=$num
        fi
    fi
done

# 输出结果
echo "所有数的和为: $sum"
echo "最大值为: $max"
echo "最小值为: $min"

 3、编写一个弹出式菜单的shell程序并实现简单的菜单功能。

#!/bin/bash
while true
do
echo "****************************************"
echo
echo "*                MENU                  *"
echo
echo "* 1.copy                  2.rename     *"
echo
echo "* 3.remove                4.find       *"
echo
echo "*                5.exit                *"
echo
echo "****************************************"
    read -p "Enter option number: " option

    case $option in
        1)
            read -p "Enter source file name: " src
            read -p "Enter destination file name: " dest
            cp $src $dest
            echo "File copied successfully!"
            ;;
        2)
            read -p "Enter old file name: " oldname
            read -p "Enter new file name: " newname
            mv $oldname $newname
            echo "File renamed successfully!"
            ;;
        3)
            read -p "Enter file name to be deleted: " filename
            rm $filename
            echo "File deleted successfully!"
            ;;
        4)
            read -p "Enter file name to be searched: " filename
            result=$(find / -name $filename 2>/dev/null)
            if [ -z "$result" ]; then
                echo "File not found!"
            else
                echo "File found at: $result"
            fi
            ;;
        5)
            echo "Exiting menu shell program..."
            exit 0
            ;;
        *)
            echo "Invalid option entered"
            ;;
     esac
done


over 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以给你介绍一些常见的Java面试上机测试题。以下是一些常见的Java面试上机测试题及其答案: 1. 题目:编写一个Java程序,判断一个数是否为素数。 答案: ```java public class PrimeNumber { public static boolean isPrime(int num) { if (num <= 1) { return false; } for (int i = 2; i <= Math.sqrt(num); i++) { if (num % i == 0) { return false; } } return true; } public static void main(String[] args) { int num = 17; if (isPrime(num)) { System.out.println(num + " is a prime number."); } else { System.out.println(num + " is not a prime number."); } } } ``` 2. 题目:编写一个Java程序,实现冒泡排序算法对一个整型数组进行排序。 答案: ```java public class BubbleSort { public static void bubbleSort(int[] arr) { int n = arr.length; for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } } public static void main(String[] args) { int[] arr = {64, 34, 25, 12, 22, 11, 90}; bubbleSort(arr); System.out.println("Sorted array:"); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } } ``` 3. 题目:编写一个Java程序,实现斐波那契数列。 答案: ```java public class Fibonacci { public static int fibonacci(int n) { if (n <= 1) { return n; } return fibonacci(n - 1) + fibonacci(n - 2); } public static void main(String[] args) { int n = 10; System.out.println("Fibonacci series up to " + n + " terms:"); for (int i = 0; i < n; i++) { System.out.print(fibonacci(i) + " "); } } } ``` 希望以上的例子能够帮助到你。如果你还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值