C语言学习第四天

day04

[1] 循环结构

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

{

for(int j=0;j<3;j++)

{

printf("i:%d j:%d\n",i,j);

}

}

外层循环执行一次,内层循环执行一轮

九九乘法表:

for(int i=1;i<10;i++)

{

for(int j=1;j<=i;j++)

{

printf("%d*%d=%2d ",i,j,i*j);

// printf("%d*%d=%d\t",i,j,i*j); // \t===tab

}

putchar(10);

}

练习:D

终端输入行数,实现以下功能:

输入5

*

**

***

****

*****

行数 每一行*个数 嵌套

1 1

2 2

3 3

终端输入行数,实现以下功能:

输入5

*

**

***

****

*****

***** 0空格

**** 1

*** 2

** 3

* 4

行数 空格 *

1 0 5

2 1 4

3 2 3

4 3 2

5 4 1

for(行数) int i=0;i<5;i++) //0-4

{

for(空格){} int k=0;k<i;k++)

for(*){} int j=5-i;j>0;j--

}

while

int i=1;

while(i<5)

{

printf("%d\n",i);

i++;

}

==========================

1-10数字和

1. 先获取10个数

2. 把10个数累加

int i=1,sum=0;

while(i<=10)

{

sum+=i;

i++;

}

printf("%d\n",sum);

do_while

int i=12;

do

{

printf("%d\n",i);

i++;

} while (i<=10);

while和do_while区别:

while先判断再执行

do_while先执行一次,再判断

死循环:while(1); for(;;); (加分号说明是一个独立的语句,不加分号说明下面还有语句要执行)

练习:A !(x++) !真=假

[2] 循环控制

break:结束循环

continue :结束本次循环,继续下一次循环

return 0:结束程序

[3] 数组

由一个或多个相同类型数据组成的集合

特点:

数据类型相同

内存连续

3.1一维数组

格式:

存储类型 数据类型 数组名[元素个数]

int arr[5];

定义了一个int 类型的数组,可以存储5个int类型的数据

例: 只有在定义时,5表示元素个数,其他任何情况下5表示数组的第6个元素

int a[5]={5,6,7,8,9};

printf("%d %d %d\n",a[0],a[2],a[4]);

访问元素: 索引从0开始

a[0]----->5

a[1]----->6

a[2]----->7

a[3]----->8

a[4]----->9

char b[5]={'h','e','l','l','o'};

3.2数组名

也表示数组的首地址,是地址常量,不能为左值(=左边)

3.3 初始化

3.3.1全部初始化

int a[5]={5,6,7,8,9};

3.3.2部分初始化

int a[5]={8,9};

未初始化部分值为0

3.3.3 未初始化

int a[5];

值为随机值

定义数组元素值都为0:

int a[40]={0};

int a[40]={ };

3.4数组遍历

int a[5]={0};

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

scanf("%d",&a[i]);

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

printf("i:%d\n",a[i]);

练习:

打印数组中最大值

3.5 内存分配

地址编号差值取决于数据类型

练习:D

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值