文章目录
首先我们在Ubuntu系统下使用Vim编辑器编写一个简单的C语言程序来输出“hello world”
一、在ubuntu20.04系统中安装vim
- 打开终端,更新软件包列表。
在终端输入如下指令
sudo apt update
2.安装vim
在终端输入如下指令
sudo apt install vim
二、在vim中编写C语言程序
1.在终端打开vim并创建c语言文件
打开终端,输入
vim hello.c
创建了一个名为hello.c的文件
2.在vim中编写代码
首先先按i进入插入模式,并输入我们所需要的代码
#include <stdio.h>
int main() {
printf("hello world!\n");
return 0;
}
3.保存并退出vim
首先按Esc退出插入模式,再在vim中输入
:wq
再按Enter键,此时文件已保存并且退出vim。
三、编译hello.c文件
打开终端,输入以下指令
gcc hello.c -o hello
四、运行hello文件
打开终端,输入以下指令
./hello
此时,终端中会显示出hello,world!
五、在ubuntu系统中用gcc命令行和Makefile方式编译程序
总要求:编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来.(1)在ubuntu系统用gcc 命令行方式编译主程序main1.c 并运行;
(2)在ubuntu系统下用Makefile方式编程主程序。
(3) 在windows系统下用熟悉的编译工具编译主程序main1.c 并运行。
1.创建子程序文件
打开vim,并创建一个子程序文件。打开终端,输入以下命令
vim sub1.c //创建一个名为sub1.c的子程序文件
2.编写子程序
要求: 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回。
在vim中按i进入插入模式,输入以下代码
#include <stdio.h>
float x2x(int a, int b) {
return (float)a * b;
}
输入完成后,按Esc退出插入模式,并输入:wq保存并退出。
3.创建主程序文件
打开vim,并创建一个子程序文件。打开终端,输入以下命令
vim main1.c //创建一个名为main1.c的子程序文件
4.编写主程序
要求:主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。
在vim中按i进入插入模式,输入以下代码
#include <stdio.h>
float x2x(int a, int b);
int main() {
int num1 = 5;
int num2 = 10;
float result = x2x(num1, num2);
printf("The result of x2x is: %f\n: %f\n", result);
return 0;
}
5.在Ubuntu系统下使用gcc命令行编译和运行
打开终端,进入包含main1.c和sub1.c文件的目录,使用以下命令编译main1.c。
gcc main1.c sub1.c -o main1
这条命令会将main1.c和sub1.c一起编译,生成可执行文件main1。
在编译成功后,在终端执行以下命令运行程序
./main1
此时,我们可以在终端显示:The result of x2x is: 50.000000
6.在Ubuntu系统下使用Makefile编译主程序
创建一个名为Makefile的文件,并添加以下内容:
CC=gcc
CFLAGS=-Wall
main1: main1.o sub1.o
$(CC) $(CFLAGS) -o main1 main1.o sub1.o
main1.o: main1.c
$(CC) $(CFLAGS) -c main1.c
sub1.o: sub1.c
$(CC) $(CFLAGS) -c sub1.c
clean:
rm -f *.o main1
打开终端,输入make命令来编译程序
make
运行编译后的程序
./main1
六、在Windows系统中运行代码
我在这里选择用Dev-c++来运行代码。
在Dev-c++z中输入如下代码并编译运行
#include <stdio.h>
float x2x(int a, int b) {
return (float)a * b;
}
#include <stdio.h>
float x2x(int a, int b);
int main() {
int num1 = 5;
int num2 = 10;
float result = x2x(num1, num2);
printf("The result of x2x is: %f\n", result);
return 0;
}
得到以下运行结果

七、实验总结
1.Ubuntu系统下的C语言编程和编译:
使用gcc编译器可以直接在命令行中编译和运行C程序,操作简单快捷。
Makefile的使用可以自动化编译过程,特别是对于包含多个源文件的项目,可以减少重复的编译命令。
2.Windows系统下的C语言编程和编译:
Windows系统下可以使用多种编译工具,如Visual Studio、MinGW等。
使用集成开发环境(IDE)如Visual Studio可以提供更丰富的功能,如代码调试、项目管理等。
3.代码组织:
将功能划分到不同的文件中(如主程序和子程序)可以提高代码的可读性和可维护性。
子程序的编写和调用是模块化编程的基础,有助于代码的复用。
1467

被折叠的 条评论
为什么被折叠?



