Day2
复习
编译器:VS2019;
学习资料
1、B站视频(P12-P17)见链接 【求知讲堂2021C语言/C++视频99天完整版(不断更新中)学完可就业-哔哩哔哩】https://b23.tv/4DzQDY;
顺序结构
1、表达式语句
2、函数调用语句
3、控制语句
4、复合语句
5、空语句
练习
#include<stdio.h>
#include<math.h>
int main(void)
{
//=====================海伦公式===============================================
//float a, b, c;
//float p;
//float S;
//printf("请输入三角形的三条边长\n");
//printf("请输入a\n");
//scanf_s("%f", &a);
//printf("请输入b\n");
//scanf_s("%f", &b);
//printf("请输入c\n");
//scanf_s("%f", &c);
//p = (a + b + c) / 2;
//S = sqrt(p * (p - a) * (p - b) * (p - c));
//printf("三角形的面积S=%f\n", S);
//===============从键盘输入大写字母要求用对应小写输出===========================
/*char a1, a2;
printf("请输入大写字母:");
a1=getchar();
a2 = a1 + 32;
printf("%c对应小写字母为%c\n",a1 , a2);*/
//============= 求ax^2+bx+c=0方程的根,a,b,c从键盘输入===============
float a, b, c;
float x1, x2;
float d;
printf("请依次输入一元二次方程的系数: a , b , c\n");
scanf_s("%f%f%f", &a, &b, &c);
printf("该方程为 %fx^2 + %fx + %f = 0\n", a, b, c);
d = b * b - 4 * a * c;
x1 = (-b + sqrt(d)) / (2 * a);
x2 = (-b - sqrt(d)) / (2 * a);
printf("它的根 x1 = %f , x2 = %f\n", x1, x2);
return 0;
}
循环结构
1、goto和if
2、while
3、do-while
4、for
练习
#include<stdio.h>
int main(void)
{
//=============if goto===================
int i = 0;
int sum = 0;
//apple:if (i <= 100)
//{
// sum = sum + i;
// i++;
// goto apple;
//
//}
//
// printf("%d\n", sum);
//===============while==================
/*while (i <= 100)
{
sum = sum + i;
i++;
}
printf("%d\n", sum);*/
//===================do while=============
//do//do and Tab
//{
// sum = sum + i;
// i++;
//}
//while (i <= 100);
//printf("%d\n", sum);
//===============for=====================
//for ( i = 0; i <= 100; i++)
//{
// sum = sum + i;
//}
//
//printf("%d\n", sum);
//=====================break============
/*int a = 10;
while (a <= 15)
{
printf("a的值为 %d\n", a);
a++;
if (a > 14)
{
break;
}
}*/
//==============continue=========
for ( i = 10; i <= 20 ; i++)
{
if (i % 3 == 0)
{
continue;
}
printf("%d\n", i);
}
return 0;
}
一维数组
1、数组定义
2、数组示例
3、数组使用
练习
#include<stdio.h>
#define SHUZUNUM 5
int main(void)
{
//==========定义数组=====================
/*int a[10];
float b[10], c[20];
char d[10];
char ch[20];
int MyArray[SHUZUNUM];
int YouArray[2 + 3];
int HisArray[SHUZUNUM + 5];
for (int i = 0; i < 10; i++)
{
printf("第%d个数为%d\n", i , a[i]);
}*/
//========== 遍历数组==============
/*int i;
int a[10];
for ( i = 0; i < 10; i++)
{
a[i] = i;
}
for (i = 0; i < 10; i++)
{
printf("%d\n", a[i]);
}
printf("%d %d\n", a[5], a[8]);*/
//================遍历数组,寻找最大值==========================
/*int i, a[10];
for ( i = 0; i < 10; i++)
{
scanf_s("%d", &a[i]);
}
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
int max=a[0];
for ( i = 0; i < 10; i++)
{
if (a[i] > max)
{
max = a[i];
}
}
printf("\n最大的数为%d\n", max);*/
//=====================对数组进行重排序===========================
int i, j, p, q,s, a[10];
//printf("请输入数字\n");
//for ( i = 0; i < 10; i++)
//{
// scanf_s("%d", &a[i]);
//}
//printf("排序前数组为:\n");
//for (i = 0; i < 10; i++)
//{
// printf("%d ", a[i]);
//}
//for ( i = 0; i < 10; i++)
//{
// p = i;
// for (j = p + 1; j < 10; j++)
// {
// if (a[i] < a[j])
// {
// q = a[i];
// a[i] = a[j];
// a[j] = q;
// }
// }
//}
//printf("\n从大到小排序后数组为:\n");
//for (i = 0; i < 10; i++)
//{
// printf("%d ", a[i]);
//}
printf("请输入数字\n");
for ( i = 0; i < 10; i++)
{
scanf_s("%d", &a[i]);
}
for ( i = 0; i < 10; i++)
{
p = i;
q = a[i];
for ( j = i + 1; j < 10; j++)
{
if (q < a[j])
{
p = j;
q = a[j];
}
}
if (i != p)
{
s = a[i];
a[i] = q;
a[p] = s;
}
}
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
return 0;
}//0 1 2 3 4 9 8 7 6 5