在Ubuntu系统下用C语言编写程序


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

  • 请在ubuntu系统用gcc 命令行方式编译主程序main1.c 并运行;
  • 请在windows系统下用你熟悉的编译工具编译主程序main1.c 并运行。
  • 在任务1基础上,在ubuntu系统下用Makefile方式编程主程序。

二、实践

  1. 任务一:创建main1.c、stu1.c文件,并编写代码
                      //main1.c  #inlcude<stdio.h>  #  include  "stu1.c"  int  main  (  )  {  printf  (  "%f"  ,  x2x  (  3  ,  5  )  )  ;  return  0  ;  }  //stu1.c  float  x2x  (  int a  ,  int b  )  {  float c  ; c  = a  + b  ;  return c  ;  }  
                     root@rick  :  ~ # mkdir test1  //创建一个工作目录 root@rick  :  ~ # cd test1 root@rick  :  ~  / test1# touch main1  . c  //新建两个.c文件 root@rick  :  ~  / test1# touch sut1  . c root@rick  :  ~  / test1# gedit stu1  . c  //利用gedit编辑器编写程序 root@rick  :  ~  / test1# gedit main1  . c root@rick  :  ~  / test1# gcc main1  . c  - o main1  //编译程序并生成可执行文件main1 root@rick  :  ~  / test1# ls main1 main1  . c stu1  . c root@rick  :  ~  / test1#  .  / main1  //运行可执行程序main1  8.000000  //结果  
  1. 任务二 
    在这里插入图片描述

  2. 任务三 
    前面步骤同任务一,Makefile的编写如下:

                     root@rick  :  ~  / test# touch Makefile root@rick  :  ~  / test# 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 root@rick  :  ~  / test# make gcc  - c sub1  . c gcc  - o main1 main1  . o sub1  . o root@rick  :  ~  / test# ls main1 main1  . c main1  . o Makefile sub1  . c sub1  . o root@rick  :  ~  / test#  .  / main1  8.000000  

三、小结 
通过三个任务的实践,我对编程的底层有了更深刻的了解,编写程序的四个步骤,预处理->编译->链接->运行。其中,雅思和托福区别在ubuntu系统下利用Makefile(自动化编译C语言程序的脚本工具)使得执行命令更加高效、便捷。

四、补充: 
1)修改系统参数,选择国内镜像软件源仓库,以提高软件安装速度。见链接: ubuntu更改镜像源 
2)ubuntu18.04系统桌面很卡怎么办,见链接: 解决ubuntu18.04桌面卡的问题 
3)ubuntu安装anaconda见链接: Ubuntu18.04 安装 Anaconda3 
4)windows通过xftp、xshell连接ubuntu,见链接: 使用xshell连接ubuntu


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM