急救:编写一个简单的Shell程序,实现将指定的文件内容中小写字母转换成大写字母显示出来。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急救:编写一个简单的Shell程序,实现将指定的文件内容中小写字母转换成大写字母显示出来。相关的知识,希望对你有一定的参考价值。

编写一个简单的Shell程序,实现将指定的文件内容中小写字母转换成大写字母显示出来。
不是C语言啊,

参考技术A #include<stdio.h>
#include<stdlib.h>
#include<ctype.h>

void convert(char * befor_ch);

int main(void)

int i;
char str[80];
gets(str);
printf("原始自符串 => %s\n" , str);

printf("使用库存函数-自符串 =>");
for(i=0;str[i]!='\0';i++)

printf("%c" , tolower(str[i]));

printf("\n");

convert(str);

system("PAUSE");
return 0;



void convert(char * befor_ch)

int i;
printf("使用副程式-自符串 =>");

for(i=0;befor_ch[i]!='\0';i++)


if(befor_ch[i] >= 'a' && befor_ch[i] <= 'z')
befor_ch[i] = befor_ch[i] - 32;
else if(befor_ch[i] >= 'A' && befor_ch[i] <= 'z')
befor_ch[i] = befor_ch[i] + 32;


printf("%c" , befor_ch[i]);

参考技术B #!/bin/bash
echo "please input filename"
read fn
tr 'a-z' 'A-Z' < $fn|tee tempt本回答被提问者采纳

编写一个弹出式菜单的shell程序,利用函数实现简单的菜单功能,n的值由键盘输入:

*****************************************
** (1)计算1到n的奇数之和; **
** (2)计算1到n的阶乘; **
** (3)计算1到n的所有质数; **
** (4)退出程序。 **
*****************************************

用select或者while都可以实现的,给你个框架,里面的小程序自己写:

#!/bin/bash
trap "" 2 3 15
MYDATE=`date "+%D %T"`
THIS_HOST=`hostname`
USER=`whoami`

#function:打开即时响应模式,读取用户点击的键值
read_char()

SAVESTTY=`stty -g`
stty raw
stty -echo
dd if=/dev/tty bs=1 count=1 2>/dev/null
stty -raw
stty echo
stty $SAVESTTY


#function:颜色模式
colour()

case $1 in
black_green)
echo \'^[[40;32m\'
;;
black_yellow)
echo \'^[[40;33m\'
;;
black_white)
echo \'^[[40;37m\'
;;
black_cyan)
echo \'^[[40;36m\'
;;
red_yellow)
echo \'^[[41;33m\'
;;
white_black)
echo \'^[[47;30m\'
;;
esac


#退出动作
my_exit()

colour black_white
exit 0

while :
do
tput clear
colour black_green
cat <<MAYDAY
--------------------------------------------------------------------------------
USER:$USER                  HOST:$THIS_HOST              DATE:$MYDATE
--------------------------------------------------------------------------------
                      1:计算1到n的奇数之和
                      2:计算1到n的阶乘
                      3:计算1到n的所有质数
                      Q:退出程序
--------------------------------------------------------------------------------
MAYDAY
colour black_cyan
echo "Your Choice[1,2,3,Q]>" 
read CHOICE
CHOICE=`read_char`
case $CHOICE in
1);;
2);;
3);;
Q|q)my_exit;;
*)echo "unknow choice!!";;
esac
echo  "Hit the ENTER key to return continue!"
read XXAA
done

有不懂得问我。

追问

直接写一个完整的吧

追答

小程序这么简单你自己可以写的?
还是你是新手刚学shell编程?

追问

新手啊

追答

1,1+3+5+...+(n-1) n能被2整除
1+3+5+...+(n-2)+n n不能被2整除

uy=`expr $n % 2`
sum=1
if [ "$uy" -eq "0" ]
then
n=`expr $n - 1`
fi
for((i=1;i<=$n;i++))
do
i=`expr $i + 2`
sum=`expr $sum + $i`
done

2,
for((i=0;i<$num;i++))
do
i=`expr $i + 1`
sum=`expr $sum \\* $i`
done

3,质数只能被1和自己整除
for i in `seq 1 $n`; do factor $i | awk \' if (NF == 2) print $2 \' ; done

参考技术A 广科的喔!哈哈哈

以上是关于急救:编写一个简单的Shell程序,实现将指定的文件内容中小写字母转换成大写字母显示出来。的主要内容,如果未能解决你的问题,请参考以下文章

怎么用shell脚本语言编写一个统计当前目录下的文件数目的...

在Linux下,用shell编写一个简单的计算器,要实现加减乘除4个功能就行了

编写一个弹出式菜单的shell程序,利用函数实现简单的菜单功能,n的值由键盘输入:

c语言编写简单shell解释器

编写一个shell程序,实现如下所示的菜单。

编写一个简单的shell程序,判断系统中是不是存在,如果存在将其删除