求一个shell程序

来源:百度知道 编辑:UC知道 时间:2024/05/13 01:24:28
编写一个SHELL程序,接受2—15范围内的一个数作为参数,在标准输出设备上用+号,-号和竖杠(|)画出以给定的参数值为边的长方形。如果命令行中参数数目不对或数值超出范围,显示相应的错误信息。

+————+
| |
| |
+————+
谢谢哪位高手指点一下~
谢谢了

#include <stdio.h>

int main(int argc, char *argv[])
{
int i, j, len, err;
if(argc != 2)
{
printf("Usage:\n");
printf(argv[0]);
printf(" <number 2~5>\n");
return 1;
}
err = sscanf(argv[1], "%d", &len);
if(err == 0 || err == EOF)
{
printf("The second parameter must be a number");
return 1;
}
for(i = 0; i < 4; ++i)
{
if(i == 0 || i == 3)
{
putchar('+');
for(j = 0; j < len-2; j++)
putchar('-');
putchar('+');
}
else
{
putchar('|');
for(j = 0; j < len-2; j++)
putchar(' ');
putchar('|');
}
return 0;
}