【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)也算⼊命令⾏模式c
ommand 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)命令,执⾏后将进⼊输⼊模式,在当前光标之后新增⽂本。
五、实验总结
linux下gcc编译的四个步骤
启动vi的⽅法:直接输⼊“vi”或直接输⼊“vi ⽂件名”命令。
启动vi时,处于命令状态,不能够输⼊字符,只能输⼊命令: a:“新增⽂本”(即Append)命令,执⾏后将进⼊输⼊模式,在当前光标之后新增⽂本。
I:“插⼊⽂本”(即Insert)命令,执⾏后将进⼊输⼊模式,在当前光标位置处新增⽂本。
d+d:“删除⼀⾏”命令。
x:“删除当前字符”命令。
P:“粘贴”命令,将复制的内容粘贴在⽬前光标所在的位置,若复制内容为整⾏⽂字,则会粘贴在光标所在位置的下⼀⾏。
:q:“退出vi”命令,不过如果在执⾏这个命令之前修改过内容,则⽆法退出。
:q!:“不存盘退出”命令,即是放弃所有的修改,强⾏退出。
:w:“存盘”命令。
:wq:“存盘退出”命令。
当我们使⽤“a”或“I”命令进⾏输⼊模式后,如果要回到命令模式,只需按⼀下ESC键即可

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。