一、任务
在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方式编程主程序。
二、实践
- 任务一:创建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//结果
-
任务二
-
任务三
前面步骤同任务一,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
5)windows下安装python3.7x,见链接:python安装教程(Windows系统,python3.7为例)
6)windows下安装pycharm,见链接:PyCharm安装教程
7)ubuntu密码忘了,怎么修改,见两个连接
1>Ubuntu18.04服务器密码忘记或被篡改如何重置密码
2>Ubuntu18.04忘记超级用户root密码,重新设置密码