-
预科第九天
今天老师给我们讲了数组的内容,还有冒泡排序法,发现我只要一接触到数组整个人都瞬间不好了,有一种当机的感觉,脑子绕不过来,但是又不明白具体是哪儿的问题,单个知识点是可以理解的。
24.数组
1>数组的遍历
#include<stdio.h>
int main()
{
int i;
int array[] = {1,3,7,24};
for(i = 0;i < 4;i++)
{
printf("array[%d] = %d\n",i,array[i]);
}
return 0;
}
定义一个大小为5的数组,求和
#include<stdio.h>
int main()
{
int array[5] = {1,2,3,4,5,};
int i;
int sum = 0;
for(i = 0;i < 5;i++)
{
sum = sum + array[i];
}
printf("sum = %d\n",sum);
return 0;
}
定义一个大小为5的数组,求其最大值,使用三目运算符
#include<stdio.h>
int main()
{
int array[5] = {2,3,4,5,6};
int i;
int max = array[0];
for(i = 0;i < 5;i++)
{
// max = max < array[i] ? array[i] : max;
if(max < array[i])
{
max = array[i];
}
else
{
max = max;
}
}
printf("max = %d\n",max);
return 0;
}
2>将数组排序
//冒泡排序 1.小泡往前
int i,j;
int array[]={5,3,1,7,13,11}; //从小到大排序
for(i = 0;i < 5;i++) //外层循环控制趟数
{
for(j = i + 1;j < 6;j++) //一趟循环的次数
{
if(array[i] > array[j])
{
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
for(i = 0;i < 6;i++)
{
printf("array[%d] = %d\n",i,array[i]);
}
//冒泡排序 2.大泡向后
int array[] = {4,2,65,32,54,3};
int i,j;
for(i = 0; i < 5;i++)
{
for(j = 0;j < 5 - i;j++)
{
if(array[j] > array[j + 1])
{
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for(i = 0;i < 6;i++)
{
printf("array[%d] = %d\n",i,array[i]);
}
老师让我们写日历,虽然老师之前讲解过,但是要自己写还是写不出来,不知道需要用到哪些命令。
作业:日历:
1>1990年1月1号星期1
2>闰年:能被4整除并且不能被100整除;或者能被400整除
if(year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)
{
闰年;
}
请输入要查询的年份:2017
请输入要查询的月份:1