练习一:
1.在用户的家目录下创建目录文件dir1和普通文件file1
ubuntu@ubuntu:~$ mkdir dir1
ubuntu@ubuntu:~$ touch file1
2.在家目录下给dir1目录嵌套创建 dir1/dir2/dir3/dir4/dir5
ubuntu@ubuntu:~$ mkdir -p dir1/dir2/dir3/dir4/dir5/
3.在家目录下直接一步进入到dir4里面
ubuntu@ubuntu:~$ cd dir1/dir2/dir3/dir4/
4.在dir4目录中将家目录下的file1移动到上一级的dir3中
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ mv ~/file1 ../
5.在dir4目录下创建一个目录文件 test
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ mkdir test
6.将test复制到上一级的dir3中
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ cp -r test ../
7.在dir4中直接查看dir3中有哪些文件
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ ls ../
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ tree ../
8.在dir4中直接回到家目录 删除刚才创建的目录 dir1
ubuntu@ubuntu:~/dir1/dir2/dir3/dir4$ cd
ubuntu@ubuntu:~$ rm -rf dir1
练习二:
1.创建目录24081C,在该目录下创建目录dir1 dir2 文件file1
ubuntu@ubuntu:~$ mkdir 24081C/dir 24081C/dir2
ubuntu@ubuntu:~$ touch 24081C/file1
ubuntu@ubuntu:~$ cd 24081C
2.使用echo在file1中打印一首古诗【执行调整格式】
ubuntu@ubuntu:~/24081C$ echo -e "\t\t床前明月光,\n\t\t疑是地上霜。\n\t\t举头望明月,\n\t\t低头思故乡。\n" > file1
3.复制file1给file2
ubuntu@ubuntu:~/24081C$ cp file1 file2
4.将file1移动到dir1
ubuntu@ubuntu:~/24081C$ mv file1 dir1
5.将file2移动到dir2
ubuntu@ubuntu:~/24081C$ mv file2 dir2
6.在file1后面追加一行语句“我爱C语言”
ubuntu@ubuntu:~/24081C$ cd dir1
7.查看file1内容
ubuntu@ubuntu:~/24081C/dir1$ echo -e "\t\t我爱C语言\n" >> file1
ubuntu@ubuntu:~/24081C/dir1$ cat file1
练习三:
1.使用gcc 程序编译生成可执行文件的步骤分为 预处理、编译、汇编、链接。
2.GCC编译器中 -S 选项完成的工作是编译,检查语法错误将高级语言编译成汇编语言。
3.写出gcc分步编译的详细步骤。
①预处理阶段:命令格式gss -E XXX.c -o XXX.i删除注释,展开头文件,替代宏(将定义的代码模板在预处理阶段被实际的代码或文本所替代。)
②编译阶段:命令格式 gss -S XXX.I -o XXX.s检查语法错误将高级语言转换成汇编语言。
③汇编阶段:命令格式 gss -c XXX.s -o XXX.o将汇编语言转换成计算机语言。
④链接:命令格式 gss XXX.o -o XXX生成可执行文件。
4.C语言的程序的入口函数是什么,请写出全称?
int main(int argc,const char* argv[]){
return 0;
}
5.用户编写了一个文本文件a.txt,想要得到一个名为txt.a的该文件,可以使用哪些指令呢?
①cp txt.a a.txt(复制txt.a文件粘贴为a.txt文件)
②mv txt.a a.txt(剪切txt.a文件重命名后粘贴为a.txt文件)
③cat txt.a > a.txt(读取txt.a
文件的内容,并将这些内容写入(或覆盖)到a.txt
文件中。如果a.txt
文件之前已经存在,它的内容会被txt.a
文件的内容替换;如果a.txt
文件不存在,它会被创建并包含txt.a
文件的内容。)
6.分析一下#include <stdio.h>的意思
#:这个符号表明接下来的内容是一个预处理指令,而不是C语言的普通代码。预处理指令是由预处理器处理的,预处理器在编译器之前运行,对源代码进行必要的转换或修改。
include
:这是预处理指令的关键字,告诉预处理器要包含(或插入)一个指定的文件或库的内容。
stdio.h
:std(标准),i:输入,o:输出,整体表示头文件,它定义了进行输入输出操作所需的宏、类型定义和函数原型。
<>可以改为"",<>表示直接在标准库中寻找该头文件,""表示预处理器首先在当前目录查找该文件,如果没有找到,再区库文件中寻找该头文件。
整体含义:当你写了一个包含#include <stdio.h>
的源代码,并尝试编译它时,预处理器会找到stdio.h
文件,并将其内容插入到你的源文件中,紧接在#include <stdio.h>
指令之后。这样,你的程序就可以使用stdio.h
中定义的函数和宏了,比如printf
和scanf
。