一、工欲善其事,必先利其器

安装C语言编译器,初学者可以先选择比较轻量级的dev c,占用空间不大,写程序什么的够用了

安装教程路径如下:

https://blog.csdn/qq_41594445/article/details/102941354

安装好了怎么编译运行呢?dev c 很简单,如下图:

第2步最好点击Compile & run,先编译再运行

二. C语言简单例子

学习写代码都是为了解决的问题,接下来看一个例子

https://leetcode-cn/problems/climbing-stairs/

简单分析,如果你现在处于第i个台阶,那么你有多少种方法跑到第i个台阶上来呢?

估计只有最近的方法也就两种吧?从i-1一次走一步上来,或者从i-2一次走两步上来。所以dp[i] = dp[i-1] + dp[i-2]) , 也就是  到达i 所需的步数(dp[i]) =  到达i 所需的步数(dp[i-1]) +  到达i 所需的步数(dp[i-2])

 所以分析过后程序就好写多了, 接下来直接写代码,代码和运行结果如下:

#include <stdio.h>
#include <stdlib.h>

/**
*定义的爬楼梯的函数,属于逻辑部分 
*/
int climbStairs(int n){
	if(n < 2) {                               //1. 如果小于2 可以直接返回
		return n;
	} else {                                  //2.大于2按照斐波拉契数列直接求和即可
		int dpi_2 = 1, dpi_1 = 2, dpi;        //2.1 初始化dp[i-2] 和 dp[i-1] 为第1和第2阶台阶
		int i = 2;
		for(;i<n;i++) {                       //2.2 循环开始求数列
			dpi = dpi_2 + dpi_1;
			dpi_2 = dpi_1;
			dpi_1 = dpi;
		}
		return dpi;                            // 返回结果
	}
}

int main() {                                               // 一 、 main主函数,一旦运行,这里将会是程序的入库  
	printf("Hello World!\n");
	int level = 5; 
	printf("爬%d楼需要%d步", level, climbStairs(5));       // 二、 调用上面的爬楼梯函数,并返回结果 dpi ,printf可以打印dpi 
	return 0;
}

 

 

 

 

dev C可能的踩坑:

1. for 中的循环编译报错问题:

for(int i=0;i<n;i++) 

-> 修改为两条语句就可以了

int i=0;

for(;i<n;i++) 

 

 

更多推荐

C语言自学-简单的记录