1. 在windows环境下通过虚拟机软件(比如Vmware、VirtualBox)安装Ubuntu 18.04或更高桌面图形版系统,熟练掌握Ubuntu常用命令,并学习使用vi/vim、或nano、或gedit文本编辑软件; Ubuntu系统一般采用 apt-get 命令进行某个软件的在线查找和安装,默认官方的软件源仓库位于国外,下载速度较慢。请修改系统参数,选择国内镜像软件源仓库,以提高软件安装速度(注意Ubuntu不同版本的对应不同名称,如Ubuntu22.04是jammy,Ubuntu20.04是focal,Ubuntu18.04是bionic,Ubuntu16.04是xenial)。

  1. 在Ubuntu系统下用C语言编写一个简单的输出 hello world 的程序,并编译有、运行之;

进入虚拟机终端,输入

touch hello_world.c

sudo gedit hello_world.c

之后就可以成功打开文本编辑器,用c语言编写输出hello world的程序,结果如下图

继续输入

gcc hello_world.c -o hello_world

./hello_world

即可输出hello world,结果如下图

  1. 请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。

  1. 请在ubuntu系统用gcc 命令行方式编译主程序main1.c 并运行;

    (1)编写主程序

    编写主程序main.c,创建新文件夹homework,进入终端,输入

    touch main1.c sudo gedit main1.c

  2. 结果如下图

  3. 在文本编辑器中输入

    #include"sub1.h"

    int main() { int x=2,y=9; printf("%.2f\n",x2x(x,y)); return 0; }

  4. 结果如下图

  5. (2)编写子程序

    进入终端输入

    touch sub1.c sudo gedit sub1.c

    结果如下图

    在文本编辑器中输入

    #include "sub1.h"

    /******/ / 参数:a,b / / 返回值:ans */ /*******/ float x2x(int a,int b) { float ans; ans=(float)b/a; return ans; }

    结果如下图

    (3)编写头文件

    进入终端输入,

    touch sub1.h sudo gedit sub1.h

    结果如下图

    在sub1.h文本编辑器中输入

    #ifndef SUB1_H #define SUB1_H

    #include<stdio.h>

    float x2x(int a,int b);

    #endif

    结果如下图

  6. 请在windows系统下用你熟悉的编译工具编译主程序main1.c 并运行。

    我们可以用gcc编译器编译主程序

    进入终端,输入

    gcc -c sub1.c gcc main1.c sub1.o -o main1

    运行主程序,输入

    ./main1

    结果如下图

  1. 在任务3基础上,在ubuntu系统下用Makefile方式编程主程序。

    创建makefile文件,进入终端,编写

    gedit Makefile

    在makefile文本输入,

    main1: main1.o sub1.o gcc -o main1 main1.o sub1.o main1.o: main1.c gcc -c main1.c sub1.o: sub1.c gcc -c sub1.c

    结果如下图

    继续输入

make ./main1

结果如下图

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐