【比特鹏哥C语言_0.学习方法】

  • Post author:
  • Post category:其他




第一节 如何学好C语言



1.选好工具

建议使用最新版Visual studio。企业里使用率高,缺点是占空间大

不建议使用VC6.0,因为比较老旧兼容性差;Dav C++已经停止更新;CodeBlocks不主流,需要配置环境,不适合初学者;VSCode需要配置环境

资料(分享)

VS2019安装教程:https://www.bilibili.com/video/BV17p4y1h7yR/

VS2013安装教程:https://www.bilibili.com/video/BV1Hk4y1R7iQ/

VS编译器设置行号:https://zhuanlan.zhihu.com/p/400751713

VS2013报库函数不安全解决方法:https://www.bilibili.com/video/BV1E14y1r7iN/

VS2013使用结果一闪而过解决:https://www.bilibili.com/vide/BM1UA411H75L/



2.怎么学C语言



第一条军规:必须实践-敲代码


  1. 学习语法

    :(1)语法就是规则 (2)语法规定了什么可以做,什么不能做

  2. 学习语法的方法

    :选择一本书学习语法:《明解C语言入门篇》、《C语言程序设计现代方法》

  3. 动手写一些代码

    :(1)模仿阶段:不是抄写,

    a. 理解别人代码实现的思路

    b.不看别人的代码,按照别人的思路,按照语法写代码
//写一个求最大值的函数,从1~10
int main()
{
	//数组
	int arr[10] = { 0 };//先创建一个数组用来存放数据
	//数组的访问是下标,下标是从0开始的,数组按照下标访问使用[]
	//输入
	int  i = 0;
	for (i=0; i < 10; i++)//从0开始计数,输入10个数停止
	{
		scanf("%d", &arr[i]);//把数输入到数组里(要用&取地址符号)
	}
	//找最大值
	int max = arr[0];//假设数组的第一个元素就是最大值
	//拿剩下的元素和max比较,如果找到了比max大的值,就更新max
		for (i=1;i < 10; i++)
	{
		if (arr[i]>max)
		{
			max = arr[i];
		}
	}
	//输出
	
	printf("max=%d\n", max);
	return 0;
}

(2)

自主实现阶段


例如:求10个整数的平均值


梳理思路:


1.输入时:使用数组存储数字,使用for循环一个一个的输入

2.求出10个数的和并算出平均值

3.输出结果,使用printf函数


写代码:


1.main函数写出来→2.创建数组→3.循环输入→4.循环求和并计算平均值→5.输出

//求10个整数的平均值
int main()
{
	//先输入10个整数,输入要用数组
	int arr[10] = { 0 };
	int i=0;
	for (i = 0; i < 10; i++)
	{
		scanf("%d", &arr[i]);
	}
	//求和求平均
	int sum = arr[0];
	float average = 0;
	for (i = 1; i < 10; i++)
	{
		sum = sum + arr[i];
	}
	average = (float)sum / 10;//平均值可能有小数,因此强制sum为浮点数
	//打印出来
	printf("平均数=%f\d", average);//单精度浮点数要用%f
	return 0;
}
//求10个整数的平均值
int main()
{
	//输入和求和都用了一次循环,因此可以简化
	int arr[10] = { 0 };
	int i=0,sum=0;
	for (i = 0; i < 10; i++)
	{
		scanf("%d", &arr[i]);
		sum = sum + arr[i];
	}
	//求平均
	float average = 0;
	average = (float)sum / 10;
	//打印出来
	printf("平均数=%f\d", average);
	return 0;
}




注:刷题网站

入门(分享):

牛客网入门:https://www.nowcoder.com/ta/beginner-programmers

PTA:https://pintia.cn/problem-sets/994805046380707840/problems/type/

进阶(分享):

牛客网进阶刷题:https://www.nowcoder.com/activity/oj

力扣:https://leetcode-cn.com/

有了基本的代码能力,可以写一些:小项目,更有成就感-

比如,我的教程中就有:

三子棋(分享):https://www.bilibili.com/video/BV1U44y1y7xN?p=61

·扫雷(分享):https://wwnw.bilibili.com/video/BV1U44y1y7xN?p=64

一步步带着你们分析,梳理,最后实现

你们也可以试试,其他的小项目



第二条军规:必须画图理解,内存布局

在这里插入图片描述



第三条军规:调试

在这里插入图片描述

VS环境调试技巧:

https://www.bilibili.com/video/BV1U44y1y7xN?p=85

https://www.bilibili.com/video/BV1U44y1y7xN?p=87

https://www.bilibili.com/video/BV1U44y1y7xN?p=89



调试步骤:F10(逐过程)→点菜单上的调试→窗口→监视



版权声明:本文为qq_31018569原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。