问题标题: 酷町堂:知识总结与讨论之1.4章节

0
0

1
已采纳
被禁言 姜思远
姜思远
初级光能
初级光能

数组第一次课讲义
什么是数组:  相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用同一个名字命名,然后用编号区分他们的变量的集合。
         这个名字称为数组名,编号称为下标,数组里面的每一个数称
为数组中的元素。
一维数组的定义:当数组元素只有一个下标时,我们称这样的数组为一维数组。 数组的定义格式如下:类型标识符 数组名[常量表达式],如:
 int a[5]; //定义一个长度为 5 的整型数组 a
数组元素的引用:数组中的每一个元素都可以当做一个变量来使用
            一维数组元素的引用格式:数组名[下标]
            注意数组元素引用和数组定义的区别。例如:int a[5];
数组的特点: 1. 数组是相同数据类型的元素的集合如: int a[10]; //数组中的元素全部为整数类型
                                                                     double a[10]; //数组中元素全部为实数类型
         char a[10]; //数组中的元素全部为字符类型
 2. 数组元素用整个数组的名字和它自己在数组中的顺序位置来表示,且数组是从 0 开始编号的。
例如,a[0]表示名字为 a的数组中的第一个元素,a[1]为数组 a 的第二个元素,以此类推...
    一维数组课后讲义(二)
一、数组的初始化:
给数组中元素赋初值的操作称为数组的初始化。 数组的初始化有两种方法:
(1) 在定义的时候进行初始化: 格式:类型标识符 数组名[常量表达式] = {值1,值2,…};
 如: int a[4]={1,2,3,4};   double b[3]={0.1,2,1.23};   char c[5]={'a','b','+','A','?'};
(2) 在输入的时候逐个元素进行初始化,如果数据量较大,需要借助for循环, 如: int a[100]; for(int i=0;i<=99;i++){ cin>>a[i]; }
特殊情况:如果要把数组的元素全部赋值为0,可以把数组定义在main函数 外,数组的所有元素自动初始化为0。
二、数组最大值的求取
 int maxa=-1; //maxa定义为一个小于数组元素取值范围的数
                for(int i=1;i<=n;i++)
  {
 cin>>a[i]; //输入元素
 if( maxa < a[i] )//每输入一个元素就跟预设的maxa对比 maxa=a[i]; //比maxa还大的数就是新的最大值
 }
  cout<<maxa; //比较完得到整个数组的最大值
三、数组最小值的求取
 int mina=10000000; //mina定义为一个大于数组元素取值范围的数
  for(int i=1;i<=n;i++)
 {
  cin>>a[i]; //输入元素
 if( mina > a[i] )//每输入一个元素就跟预设的mina对比
  mina=a[i]; //比mina还小的数就是新的最小值
  }
 cout<<mina; //比较完得到整个数组的最小值
                                                             一维数组课后讲义(三)
一、课堂内容:
选择排序:
选择排序是一种简单直观的排序算法。
它的主要原理就是每一次从待排序的数据元素中选择最大(或最
小)的元素放到待排序序列的开头,依次确定第1位,第2位,第3
位,……,第n-1位元素(则最后第n位也确定了)。
最后序列中的元素就按照从大到小(或从小到大)的顺序排列好
了。
#include <bits/stdc++.h>
using namespace std;
int main()
{
 //从大到小
 int a[100001],n;
 cin>>n;
 for(int i=1;i<=n;i++)
 {
  cin>>a[i];
 }
 // i 从第一个元素到倒数第二个元素的下标
 for(int i=1;i<=n-1;i++)
 {
  // j 从i后面的第一个元素到最后一个元素的下标
  for(int j=i+1;j<=n;j++)
  {
   // 如果后面的数比较大,就交换到前面i的位置
   if(a[j]>a[i])
   {
    swap(a[i],a[j]);
   }
  }
  
 }
 for(int i=1;i<=n;i++)
  cout<<a[i]<<" ";
 return 0;
}
                 字符串课后讲义(二)
一、课堂内容:
1. empty 函数:
  判断字符串是否为空字符串的函数:empty() ?
 格式:字符串名.empty(); //如:s.empty(); ?
  功能:若s为空串(只有结束符的字符串)则返回true/1,否则返 回false/0。 ?
  如:string a="",b="123"; cout<<a.empty()<<endl; //输出为1 cout<<b.empty()<<endl; //输出为0 //别忘了加小括号
2. substr 函数:
  截取子串函数:substr(开始截取的位置,截取的长度) ?
 格式:字符串.substr(index,len); ?
 功能:从字符串1中index下标所对应的元素开始,截取之后len 个长度的字符得到一个新的字符串常量,直接输出或者定义另外一 个字符串变量来进行存储,且原字符串不发生变化。
 如:string a,b; a="hello"; b=a.substr(0,2); //截取a中从下标0开始的2个字符,赋值给b cout<<a<<endl; //输出为hello,原字符串不变 cout<<b; //输出为he
3. erase 函数:
  删除部分字符串的函数:erase(开始删除的位置,删除的长度) ?
 格式:字符串1.erase(index,len); ?
 功能:删除字符串1中以index下标对应的元素为开始的len个长度 的字符。
  如:string a; a="hello"; a.erase(0,2); //删除a中从下标0开始的2个字符 cout<<a<<endl; //输出为llo,原字符串改变

0
李泓一
李泓一
中级守护
中级守护

讨论啥??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

0
0
范皓翔
范皓翔
初级光能
初级光能

啥???????????????????????????????????????????

我要回答