c语言视频学习(第五天)

这篇博客介绍了C语言的基础知识,包括for循环的使用,程序调试技巧,如设置断点和逐句执行,以及函数的定义与调用。文章还详细讲解了数组的一维和二维应用,以及表驱动法的概念。同时,涉及了局部变量和全局变量的作用域。通过实例展示了如何在C语言中操作和理解这些概念。
摘要由CSDN通过智能技术生成

10.1 for循环

#include<stdio.h>
#define GOLD 1000
int main(void)
{
	int rush;
	//循环条件:
	//1.初始化的变量
	//2.判断条件(满足或不满足)
	//3.自增衡量变量
	for (rush = 1; rush <= GOLD;rush++) {
		printf("rush = %d\n", rush);
	}
	printf("挖完了!\n");
	return 0;
}
  

10.2 调试

能够逐句执行语句,插入断点等

#include<stdio.h>
int main(void)
{
	int row,column;
	for (row = 0; row < 10; row++) {
		for (column = 0; column <= 9; column++) {
			printf("%d*%d=%2d\t", row, column, row * column);
		}
		printf("\n");
	}
	return 0;
}
  

注意:一个项目可以有多个源文件,但是只能有一个主函数:main函数。

 快捷键:

Ctrl+K、Ctrl+C注释选定行

Ctrl+K、Ctrl+U取消选定行注释

Ctrl+K、Ctrl+D对齐所有代码

Ctrl+D 复制并粘贴选定行

 11.1 函数

#include<stdio.h>

void sum(int number_1, int number_2);
//函数名:sum
//函数的返回值类型:void
//函数的参数:有两个参数,参数的类型都是int
//参数名

int main(void)
{
	sum(90, 100);
	return 0;
}

void sum(int number_1, int number_2) {
	printf("sum = %d\n", number_1 + number_2);

}
#include<stdio.h>

int sum(int number_1, int number_2);
//函数名:sum
//函数的返回值类型:void
//函数的参数:有两个参数,参数的类型都是int
//参数名

int main(void)
{
	int result = sum(90, 100);//使用的时候也要用与函数返回值类型一致的数值类型来接收
	printf("result = %d\n", result);
	return 0;
}

int sum(int number_1, int number_2) {
	int score_sum = number_1 + number_2;
	return score_sum;//返回值的类型一定要和定义的函数类型一致
}

形参:定义函数和声明函数时用的参数

实参:调用函数时的参数

可以理解为,形参是容器,实参是装在容器中的数值

11.2作用域

在函数中定义的变量叫局部变量,只能在该函数中有效

在函数外定义的变量叫全局变量,在全局都能使用

12.1一维数组

可以一次定义多个变量

#include<stdio.h>

int main(void)
{
	//数组类型 数组名称[数组长度] = {};
	unsigned plants[5] = { 100,50,12,30,51 };
	printf("plant----- %u\n", plants[0]);
	//数组的元素小标从0开始, 规律:第n个元素的下标为n-1
	return 0;
}
#include<stdio.h>

int main(void)
{
	unsigned plants[5] = { 100,50,12};//定义时给出的数的个数少于数组长度,后边的数自动为0
	printf("plant----- %u\n", plants[3]);
	return 0;
}
#include<stdio.h>

int main(void)
{
	unsigned plants[5];//定义数组时一个数都没给的话,数组内的所有元素都将为乱数
	//plants[0] = 99;
	for (int i = 0; i < 5; i++) {
		printf("lant-------%u\n", plants[i]);
	}
	return 0;
}

12.2 二维数组

#include<stdio.h>

int main(void)
{
	int score[6][5] = { {1,3},{2,25,36,55,44},{12,13,14,15,16},{17,18,19,20,21},{22,23,24,26,27},{31,32,33,34,35} };
	printf("score = %d\n", score[0][0]);
	printf("score = %d\n", score[1][1]);
	return 0;
}

12.3 表驱动法-bool类型 

#include<stdio.h>

int days_of_month(int month);
int main(void)
{
	printf("总共%d天!\n", days_of_month(2));
	return 0;
}
int days_of_month(int month) {
	int day_array[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
	return day_array[month - 1];
}

#include<stdio.h>
#include<stdbool.h>//引入bool布尔型数值,即只有1和0

int days_of_month(int month,int year);
bool is_leap(int year);
int main(void)
{
    //表驱动法
	printf("总共%d天!\n", days_of_month(2,2016));
	return 0;
}
//返回某个月的天数,依赖is_leap函数
int days_of_month(int month,int year) {
	int day_array[12] = { 31,is_leap(year) ? 29 : 28,31,30,31,30,31,31,30,31,30,31 };
	//三元运算符作判断
	return day_array[month - 1];
}
bool is_leap(int year) {
	//判断年份是否是闰年,返回值为1则为闰年,返回值为0则为平年
    if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
		return 1;
	}
	else
		return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值