Ubuntu系统使用gcc和Makefile编译C程序 及Devc++基于“辗转相除法”的10进制数转2进制的程序
Ubuntu是一个以桌面应用为主的Linux发行版操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了GNOME桌面环境,改为Unity。此前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。
Ubuntu的下载
认识虚拟机Vmware
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。接下来,我们将通过Vmware安装Ubuntu。
下载 VMware Workstation Pro | CN
Ubuntu的下载
ubuntu系统教程 实操一:ubuntu镜像的下载与安装_哔哩哔哩_bilibili
Ubuntu的使用
Ubuntu系统的介绍
Ubuntu是一个以桌面应用为主的Linux发行版操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了GNOME桌面环境,改为Unity。此前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。
Ubuntu下打开终端
1.用搜索框打开终端
点击 Ubuntu 桌面左上角图标进入搜索框,输入“term”可以弹出终端“Terminal”程序,运行它,如下图所示:
2.使用右键打开终端
在桌面或者在文件浏览器的任何目录下右键鼠标后在弹出的菜单栏中选择“Open in Terminal”
3.快捷键打开终端
使用快捷方式打开终端,快捷方式为”Ctrl+Alt+T”,使用快捷方式可在绝大多情况下直接唤出 Ubuntu 的终端
Ubuntu常用命令
常用的Shell命令
目录操作 | ls, cd,pwd, mkdir, rmdir; |
文件操作 | touch, cat, cp, rm, mv, chmod ; |
文件处理 | grep, head, tail, wc, find, which, whereis, locate; |
压缩命令 | bzip2,bunzip2, gzip, unzip, tar; |
进程操作命令 | top, ps, kill ; |
磁盘操作命令 | mount, unmount; |
开关机命令 | shutdown, halt, poweroff, reboot; |
其他常用命令 | echo, more, less, help, man; |
最常用的Ubuntu命令
1.cd:切换目录
前往同一级的另一个目录
cd ../directory name
cd .. 表示进入上层目录
cd ../.. 进入上上层目录,后面还可以加更多。
前往同一级的另一个目录
cd ../directory name
cd - //表示返回上一次的目录
cd ~ //进入home主目录,即/home/用户名的简写
2.ls:展示当前目录下的内容
列出目录下所有文件
ls -a
3.cat:显示文本文件内容
在终端打印出文本内容。
cat <文件名> //在terminal内部打印,和gedit相区分
文本编辑软件的学习(vi/vim)
(一)vi/vim
1.vi简述
所有的 Unix Linux系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在。但是目前我们使用比较多的是 vim 编辑器。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
2.vim简述
Vim 是从 vi 发展出来的一个文本编辑器,vim 即 vi IMproved,在 vi 的基础上做了很多改进,如:增加了多级撤销、多窗口操作、崩溃后也可以恢复、增加了稳定性、关键字自动补全、上下文自动补全等功能,在程序员中被广泛使用。
3.启动VIM
vim + 文件名 #在此目录下,如果文件存在,则直接打开,从文件末尾开始若文件不存在,则新建这个文件
vim -R + 文件名 #以只读的方式打开文件,但可以强制保存
vim -r +文件名 #恢复上次异常退出的文件
vim -M +文件名 #以只读的方式打开文件,不可以强制保存
vim +数字+文件名 #从第num行开始
vim +/string +文件名 #打开file,并将光标停留在第一个找到的string上
4.命令模式的命令
光标移动操作指令
命令 | 说明 |
---|---|
k | 光标上移 |
j | 光标下移 |
h | 光标左移 |
l | 光标右移 |
shift+6 | 光标移动到行首 |
shift+4 | 光标移动到行尾 |
gg | 光标移动到首行 |
G | 光标移动到尾行 |
ctrl+b | 翻屏操作,向上翻 |
ctrl+f | 翻屏操作,向下翻 |
数字+G | 快速将光标移动到指定行 |
数字+上下方向键 | 以当前光标为准,向上/下移动n行 |
数字+左右方向键 | 以当前光标为准,向左/右移动n个字符 |
删除操作指令
命令 | 说明 |
---|---|
x | 删除游标所在的字符 |
dd | 删除整行 |
2dd | 向下删除2行,以此类推 |
dw | 删除一个单词(不适用中文) |
d+shift+4/shfit+d | 删除至行尾 |
d+shift+6 | 删除至行首 |
复制粘贴操作指令
命令 | 操作 |
---|---|
yy | 复制游标所在的整行 |
3yy | 向下复制3行,以此类推 |
y+shift+6 | 复制至行首,不含光标所在处字符 |
yw | 复制一个单词 |
p | 粘贴至光标后的下一行 |
P | 粘贴至光标前的 |
cc | 替换整行,即删除游标所在行,并进入插入模式 |
r+<待替换字母> | 将游标所在字母替换为指定字母 |
R | 连续替换,直到按下Esc |
/+<需要查找的字符串>+回车 | 向下查找(进入查找之后,输入n和N可以继续查找,n是查找下一个内容,N查找上一个内容,命令行模式下输入noh回车可取消搜索) |
?+<需要查找的字符串>+回车 | 向上查找(进入查找之后,输入n和N可以继续查找,n是查找下一个内容,N查找上一个内容,命令行模式下输入noh回车可取消搜索) |
撤销操作命令
命令 | 说明 |
---|---|
u | 撤销上一次操作 |
ctrl+r | 重做上一次撤销的操作 |
插入模式的命令
命令 | 说明 |
---|---|
i | 在当前光标之前,进入插入模式 |
I(大写的i) | 在本行开头,进入插入模式 |
a | 在光标之后,进入插入模式 |
A | 在本行结尾,进入插入模式 |
o | 在当前行后插入一个新行,并进入插入模式 |
O | 在当前行前插入一个新行,并进入插入模式 |
s | 删除当前字符,并进入插入模式 |
S | 删除当前行中的所有文本,并进入插入模式 |
在插入模式下,不能使用h,j,k,l键来移动光标,而必须使用光标移动键。
末行模式的命令
命令 | 说明 |
---|---|
:q! | 强制退出vim,不保存 |
:q | 退出vim |
:wq! | 强制保存并退出vim |
:wq | 保存并退出vim |
:x | 保存并退出vim |
:w <文件路径> | 另存为 |
:saveas <文件路径> | 另存为 |
:set nu | 显示行号 |
:set nonu | 取消行号 |
:ce(center) | 本行内容居中 |
:ri(right) | 本行内容居右 |
:le(left) | 本行内容居左 |
Ubuntu下输出Hellowworld
step 1.创建程序文件夹
打开终端
mkdir +文件名(创建文件)
cd +文件名(打开文件)
step 2.创建程序项目文件
mkdir +文件名(创建文件)
cd +文件名(打开文件)
step 3.用vim新建并打开hw.c的文件
vi hw.c
step 4.保存并退出vim
点击“ESC”恢复到普通模式,按下“:”进入命令模式,使用“:x”保存并退出vi
step.5 用gcc命令编译hw.c文件
gcc常见命令
无选项编译链接 | 用法:#gcc hw.c 作用:将hw.c预处理、汇编、编译并链接形成可执行文件。 |
选项 -o | 用法:#gcc hw.c -o hw 作用:将hw.c预处理、汇编、编译并链接形成可执行文件hw。-o选项用来指定输出文件的文件名 |
选项 -E | 用法:#gcc -E hw.c -o hw.i 作用:将hw.c预处理输出hw.i文件。 |
选项 -S | 用法:#gcc -S hw.i 作用:将预处理输出文件hw.i汇编成hw.s文件。 |
选项 -c | 用法:#gcc -c hw.s 作用:将汇编输出文件hw.s编译输出hw.o文件。 |
无选项链接 | 用法:#gcc hw.o -o hw 作用:将编译输出文件hw.o链接成最终可执行文件hw。 |
选项-O | 用法:#gcc -O1 hw.c -o hw 作用:使用编译优化级别1编译程序。 |
gcc hello.c -o hello
step 6 编译运行
Devc++基于“辗转相除法”的10进制数转2进制的程序
一.代码
#include <bits/stdc++.h>
using namespace std;
void Computational_function(int decimalNumber)//计算函数
{
if(decimalNumber == 0) //第一种情况若输入的十进制数为0,则输出二进制形式也为0。
{
cout<<"十进制转为二进制的结果为:"<<decimalNumber<<endl;
return;
}
else
{
int binaryNumber[32];//定义储存二进制数的数组。
int i=0;
while (decimalNumber > 0) {
binaryNumber[i] = decimalNumber % 2;//十进制数对于2取余为十进制转二进制的基本算法。
decimalNumber /= 2;
i++;
}
cout<<"十进制转为二进制的结果为:";
for(int j=i-1;j>=0;j--)//逆向输出数组中的元素为二进制数。
{
cout<<binaryNumber[j];
}
}
cout<<endl;
}
int main()
{
int decimalNumber;
cout<<"请输入需运算的十进制数:";
cin>>decimalNumber;
Computational_function(decimalNumber);
return 0;
}
二.运行结果
更多推荐
所有评论(0)