2月8日作业

1、现有文件test.c\test1.c\main.c,编写Makkefile

代码:

CC=gcc
EXE=a.out
OBJS=$(patsubst %.c,%.o,$(wildcard *.c))
CFLAGS=-c -o
 
all:$(EXE)
 
$(EXE):$(OBJS)
	$(CC) $^ -o $@
 
%.o:%.c
	$(CC) $(CFLAGS) $@ $^
 
.PHONY:clean
 
clean:
	@rm $(OBJS) $(EXE)

运行结果:2月8日作业_第1张图片

2、C编程实现:输入一个字符串,计算单词个数 

例如:"this is a boy"

输出单词个数:4个

代码:

#include 
#include 
#include 
 
int main(int argc, const char *argv[])
{
	char str[30]="";
	printf("please enter str:");
	gets(str);
	int num=0;
	char c;
	for(int i=0;str[i]!='\0';i++)
	{
		if(str[i]==' ')
		{
			num++;
		}
	}
	printf("len=%d\n",num+1);
	return 0;
}

运行结果:

2月8日作业_第2张图片

3、在终端输入一个文件名,判断文件的类型 

代码:

#!/bin/bash
 
read -p "please enter file:" file #提示输入文件名
 
if [  -b ./$file ]     #判断是否是块设备文件
then
    echo block
elif [ -c ./$file ]    #判断是否是字符设备文件
then
    echo character
elif [ -d ./$file ]    #判断是否是目录文件
then
    echo directory
elif [ -f ./$file ]    #判断是否是普通设备文件
then
    echo file
elif [ -L ./$file ]    #判断是否是软链接文件
then
    echo line
elif [ -S ./$file ]    #判断是否是套接字文件
then
    echo socket
elif [ -p ./$file ]    #判断是否是管道文件
then
    echo pipe
else
    echo unexist                 #若文件不存在输出不存在
fi

运行结果:

2月8日作业_第3张图片

4.字符串倒置:(注意:是倒置,而不是直接倒置输出)
原字符串为:char *str =“Iam Chinese
倒置后为:“Chinese am I”
附加要求:删除原本字符串中多余的空格 

代码:

#include 
#include 
#include 
int main(int argc, const char *argv[])
{
	char str[30]="";
	printf("please enter str:");
	gets(str);
	puts(str);
	//整体逆置
	int i=0,j=strlen(str)-1;
	while(i

运行结果:

2月8日作业_第4张图片

你可能感兴趣的:(linux,运维)