【Linux实验】vi编辑器

一、实验目的及要求

在Linux操作系统中设计一个C语言程序,当程序运行时显示如下的运行效果:
在这里插入图片描述

根据要求写出相关的解决方案和程序代码

二、实验仪器设备

电脑 VMware Workstation Pro应用程序

三、实验内容

(一)背景步骤
本案例通过编写一个六六乘法表的C语言程序,练习vi编辑器的使用和linux下的基础编程,关键在于实现输出结果的算法。
打开 红帽子 系统工具 终端 ,或者 桌面上直接右键点击终端。输入命令vi ,进入vi编辑器中,按a回车进入编辑状态。程序写完后,按esc退出,输入命令:此时会提示保存成功。再次输入命令:q(退出),在这个时候调用gcc 编译链接程序。输入命令 gcc -o yyy xxx.c
(二)实验原理
1.vi编辑器的使用
vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)
命令行模式(command mode)控制屏幕光标的移动,字符、字或行的删除除,移动复制某区段及进入Insert mode下,或者到 last line mode。
插入模式(Insert mode)只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
2.Linux环境下的gcc的使用
格式:gcc [选项][要编译的源程序文件名]
当不用任何选项编译一个程序时,gcc将会生成(假定编译成功)一个名为a.out的可执行文件。例如:下面的命令将在当前目录下产生一个叫a.out的文件:gcc mytest.c
可以用-o编译选项为将产生的可执行文件指定一个文件名来代替a.out,例如,将一个叫mytest.c的C程序编译为名叫mytest的可执行文件:
gcc –o mytest mytest.c
注意,当使用-o选项时,-o后面必须跟一个文件名。
3.算法代码讲解说明
#include <stdio.h>
int main() {
int i,j,k; // i, j控制行或列
for(i=1;i<=6;i++) {
for(j=1;j<=6;j++)
// 行数从第一行到第九行,列数逐行增加。%d 控制宽度为一个字符,且右对齐;如果改为 %-2d 则为左对齐
// \t为tab缩进
printf("%d*%d=%d\t", i, j, k);//输出运行结果。
printf("\n");//行数大于列数就换行
}

四、实验实施步骤

(一)实验调试步骤
(1)打开vi编辑器,建立一个c程序文件test.c。

在这里插入图片描述

(2)编写主程序
在这里插入图片描述

(3)使用gcc编译写好的程序。
其中test.c是源文件,-o是生成目标文件,test是目标文件。
(4)运行程序,查看结果

在这里插入图片描述

(二)实验原始数据记录
(三)实验调试过程中存在的问题、解决问题的思路及办法
问题:启动vi时,不能够输入字符。
解决:启动vi时,处于命令状态,只能输入命令: a:“新增文本”(即Append)命令,执行后将进入输入模式,在当前光标之后新增文本。

五、实验总结

启动vi的方法:直接输入“vi”或直接输入“vi 文件名”命令。
启动vi时,处于命令状态,不能够输入字符,只能输入命令: a:“新增文本”(即Append)命令,执行后将进入输入模式,在当前光标之后新增文本。
I:“插入文本”(即Insert)命令,执行后将进入输入模式,在当前光标位置处新增文本。
d+d:“删除一行”命令。
x:“删除当前字符”命令。
P:“粘贴”命令,将复制的内容粘贴在目前光标所在的位置,若复制内容为整行文字,则会粘贴在光标所在位置的下一行。
:q:“退出vi”命令,不过如果在执行这个命令之前修改过内容,则无法退出。
:q!:“不存盘退出”命令,即是放弃所有的修改,强行退出。
:w:“存盘”命令。
:wq:“存盘退出”命令。
当我们使用“a”或“I”命令进行输入模式后,如果要回到命令模式,只需按一下ESC键即可

猜你喜欢

转载自blog.csdn.net/qq_44762986/article/details/112224015
今日推荐