C语言高级基础练习(2023-2-16)

1. 打印九九乘法表,printf "%d * %d = %d\t" i j $((i*j))

#!/bin/bash
i=0
j=0
sum=0
for i in `seq 1 1 9`
do 
    for j in `seq 1 1 $i`
    do
        sum=$(($i*$j))
        printf "%d * %d = %d  " $i $j $sum
        #echo -n "$j * $i = $sum   "
    done
    echo
done
C语言高级基础练习(2023-2-16)_第1张图片

⒉.输入文件名,判断是否为普通文件,如果为普通文件,判断是否为脚本文件,如果为脚本文件,判断是否有可执行权限,如果没有可执行权限,添加可执行权限。

#!/bin/bash
read -p "输入一个文件" file
if [ -f $file ]
then 
    echo "普通文件"
    str=$(echo $file| cut -d "." -f 2)
    if [ "$str" = "sh" ]
    then 
        echo "是脚本文件"
        if [ -x $file ]
        then
            echo "有可执行权"
        else
            echo "没有执行权"
            echo "正在添加执行权"
            chmod 777 $file
    
        fi
    fi
fi

3.输入一个无符号的八位数,输出他的二进制

#!/bin/bash
read -p "输入一个整型" num
i=0
while [ $num -gt 0 ] 
do 
    pos1=$((num&0x01))
    ((num=num>>1))
    arr[i]=$pos1
    ((i++))
done
for((i=7;i>=0;i--))
do
    echo -n ${arr[i]}
done

#read -p "请输入一个数" var
#for i in `seq 0 1 7`
#do
#    if [ $((var$0x80)) ]
#    then
#        echo -n "1"
#    else
#        echo -n "0"
#    fi
#    ((var=var<<1))
#done

你可能感兴趣的:(C语言,c语言,c++,服务器)