数组:
如果我们要存储1-10的数字,怎么存储?C语言中给了数组的定义:一组相同类型元素的集合
#include<stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
return 0;
}
arr是数组名,int arr[10]的意思是arr这个数组中包含十个元素,他们都是int类型
#include<stdio.h>
int main()
{
char arr1[10] = { 0 };
float arr2[10] = { 0 };
double arr3[10] = { 0 };
return 0;
}
char float double同理,数组名的前缀是什么类型,这个数组就是用来存放什么类型元素的数组
如果我们想访问数组中的某个元素,该如何写代码呢?
C语言规定数组的每个元素都有一个下标,下标是从0开始的。
#include<stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
printf("%d ", arr[0]);
printf("%d ", arr[1]);
printf("%d ", arr[2]);
printf("%d ", arr[3]);
printf("%d ", arr[4]);
printf("%d ", arr[5]);
printf("%d ", arr[6]);
printf("%d ", arr[7]);
printf("%d ", arr[8]);
printf("%d ", arr[9]);
return 0;
}
选择语句:
if else语句:
我们来执行这样一个程序,如果输入的值大于10,返回YES,否则返回NO
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int num = 0;
scanf("%d", &num);
if (num > 10)
{
printf("YES");
}
else
{
printf("NO");
}
return 0;
}
循环语句:
1.whlie语句
我们经常会打印诸如此类的代码
#include<stdio.h>
int main()
{
int i = 0;
printf("%d",i);
return 0;
}
但一个数组中的元素有时不止一个,当元素个数很大时,我们就不太好一个一个的打印
如果我们想一次性打印数组中的全部元素,应该怎么打印呢?
这就要进入到c语言当中的循环语句了。
#include<stdio.h>
int main()
{
int i = 0;
int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
int n = sizeof(arr)/sizeof(arr[0]);
while (i<n)
{
printf("%d\n", arr[i]);
i++;
}
return 0;
}
我们来看看while循环是如何运行的
首先,先创建一个十个元素的整形数组arr,并把它的元素个数存放到n中。
之后,判断i和n的大小关系,i<n,符合条件,进入循环
打印数组的第一个元素arr[0],并且i++,while内部的内容执行完毕,继续判断i和n的大小关系,依然符合条件,打印第二个元素arr[1]。如此往复,当i等于n时,不符合条件,循环结束。
2.for循环
我们依然拿上文while循环的代码目的举例
#include<stdio.h>
int main()
{
int i = 0;
int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
int n = sizeof(arr) / sizeof(arr[0]);
for (i = 0; i < n; i++)
{
printf("%d\n", arr[i]);
}
return 0;
}
上文介绍while循环时,已讲述清楚,这里不再赘述,以图片介绍
3.do while 循环
与while循环和for循环不同的是,dowhile循环时先执行后判断
这里我们以一个简单的游戏菜单来举例
#include<stdio.h>
int main()
{
int input = 0;
do
{
printf("请选择(1/0)\n");
printf("1.开始游戏\n");
printf("0.结束游戏\n");
scanf("%d", &input);
} while (input);
return 0;
}
当然,这里我们并没有将游戏内容的代码写出来。dowhlie循环为我们保证了至少执行一次循环内容。