【悦~】实现两个数减法

一、程序

在这里插入图片描述

main.c

#include <stdio.h>
#include "sub.h" 

int main()
{
	int a, b, c;
	printf("请依次输入被减数和减数:\n");
	scanf("%d%d", &a, &b);
	printf("a=%d, b=%d\n", a, b);
	c = sub(a, b);
	printf("result: %d - %d = %d\n", a, b, c);
	return 0;
}

sub.c

#include <stdio.h>
int sub(int a, int b)
{
	return (a - b);
}

sub.h

#ifndef SUB_H
#define SUB_H

int sub(int a, int b);

#endif

Makefile

sub: main.o sub.o
	gcc -o sub main.o sub.o
%.o: %.c
	gcc -c $<
clean:
	rm -rf *.o sub

二、运行

将上述四个文件放到同一个文件夹下,比如我放到了桌面的test文件夹中,路径:/home/clay/桌面/test

在这里插入图片描述

快捷键ctrl+shift+T打开终端,进入到该路径,命令如下:

cd /home/clay/桌面/test

接着输入make运行程序,效果如下图:

在这里插入图片描述

接着输入./sub运行可执行文件,效果如下图:

在这里插入图片描述

按照提示,输入被减数和减数,这里以8 3为例,效果如下图:

在这里插入图片描述

三、对比上一次的那一道题

编写程序,main.c调用fun1.c输出“This is fun1!”,调用fun2.c输出“This is fun2!”,注意两个字符串输出均有换行。
(1)、编写三个源文件
(2)、编写生成work可执行文件的Makefile

解题过程如下:
(1)
main.c

#include <stdio.h>
#include "fun1.h" 
#include "fun2.h" 

int main()
{
   fun1();
   fun2();
   return 0;
}

fun1.c

#include <stdio.h>
void fun1(void)
{
	printf(“This is fun1! \n”);
}

fun2.c

#include <stdio.h>
void fun2(void)
{
	printf(“This is fun2! \n”);
}

fun1.h

#ifndef _FUN1_H
#define _FUN1_H
void fun1();
#endif

fun2.h

#ifndef _FUN2_H
#define _FUN2_H
void fun2();
#endif

(2)
Makefile

work: main.o fun1.o fun2.o
	gcc -o work main.o fun1.o fun2.o
%.o: %.c
	gcc -c $<
clean:
	rm -rf *.o work
ReCclay CSDN认证博客专家 视觉/OpenCV 图像处理 深度学习
大家好,我是CSDN博主ReCclay,目前处于研究生阶段,就读于电子科技大学,主攻方向为汽车辅助驾驶算法研究。入站以来,凭借坚持与热爱,以博文的方式分享所学,截止目前累计博文数量达800余篇,受益人次达135万余次,涉及领域包括但不限于物联网开发、单片机开发、Linux驱动开发、FPGA开发、前/后端软件开发等。在未来我将继续专注于嵌入式相关领域,学习更多的科技知识,输出更高质量的博文。希望在”2020博客之星年度总评选“中,可以大家的关注和投票,投票地址:https://bss.csdn.net/m/topic/blog_star2020/detail?username=recclay
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页