无论是C++还是Python都只是一门编程语言,是语言最起码要能看懂,不需要精通,就如你会说话,却不一定是演讲家一样~
Python和C ++有着根本的区别,最大的区别是C ++是静态类型的,而Python是动态类型的。Python是原生支持面向对象范式的语言,C不是。它们有各自的应用领域,没有孰强孰弱,两者结合一下看能是极好的,
C++有它的特点,结构化语言的显著特点是代码及数据的分隔化,程序的各个部分除了必要的信息交流外彼此独立,这种结构化方式可使程序层次清晰,便于使用、维护以及调试。
C++语言一共只有32个关键字和9种控制语句,程序书写自由。它把高级语言的基本结构和语句与低级语言的实用性结合起来,既具有高级语言的功能,又具有低级语言的很多特性,C++语言可以像汇编语言一样对位、字节和地址进行操作,C++语言在代码效率方面可以和汇编语言相媲美,一般只比汇编程序生成的目标代码效率低10-20% 。
C++语言的运算符包含的范围很广泛,共有种 34 个运算符。运用这些运算符可构成简洁而功能强大的表达式,表达式的类型灵活多样,可以实现在其它高级语言中难以实现的运算。
C++语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等,能用来实现各种复杂的数据类型的运算。并引入了指针概念,使程序效率更高。
看完K12的信息技术课本你会觉得学编程,C基础还是应该普及一下。大多数人印象中小学、初中没学过编程,是因为不是没有是没学。
每次都说些废话,只是想更多了解它。
计算机运算速度很快,一瞬间就可以处理成千上万的数据。前面例子基本都是读取一个数据后立刻对这些数据进行处理,然后再也用不到这些数据了。但有些时候我们需要将这些数据保存下来,便于再次使用。
比如比较几个数的大小,找出最大值和最小值,如果少了可以设立几个变量存储,但是如果要比较的是成千上万个数,你定义成千上万个变量是不是感觉有点傻?
还有在生活中,我们常常会用一个数字对应一个数字(也有可能是其他类型)来统计数据,比如学号对应成绩,日期对应事件等等,在C++中,就需要用到一个叫数组的数据容器。
数组不仅可以存储输入的数据,还能存下运算过程中的“半成品”甚至答案,是 C++ 中非常重要的一部分。
所谓数组,是有序的元素序列。
若将有限个类型相同的变量的集合命名,那么这个名称为数组名。
组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。
数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。
例如想要声明一个"一个数字对应一个整数,共100个数"的数组a的代码如下:
int(数据类型) a[100](数组名字[数组大小]);
一个整数:数据类型-int
共100个数:数组大小-100,数组大小不能为变量
数组a:数组名字-a
比如下面代码,定义了一个整型数组nums,在C++11版本后对于数组的赋值"="可以省略。
要注意的是大括号 { } 之间的值的数目不能大于我们在数组声明时在方括号 [ ] 中指定的元素数目。如果您省略掉了数组的大小,数组的大小则为初始化时元素的个数。
int a[10];//未赋给初值的数组,每个元素的初值可能为随机数
int a[10]={1,2,3,4,5,6,7,8,9,10}
int a[10]={1,2,3,4,5}//仅对前五个元素赋予初值,从第六个元素开始,后面的元素均为0
int a[10]={}//仅写一个括号,这样所有的元素的初值都为0
double b[10];
char str[10];
2、再了解一个词:数组下标
如同变量一样,数组的运算只不过是在很多个大同小异的变量中挑出一些来运算而已,比如,我想要让a数组里的第3个元素的值变为1,就可以写成这样:第3个元素为什么编号是2呢?是因为数组的编号(学名下标)是从0开始的,一直到(数组大小-1),在X数组里的第y个元素的代码表达式如下:
让a数组中的第i个元素赋值为a数组中的第i-1个元素与第i-2个元素之和的代码如下:
一定要注意:a[i]代表的是第i+1个元素,不是第i个元素,下标不能大于等于数组大小,不能小于0,否则会导致数组越界,导致程序崩溃。比如下面的代码:
#include
using namespace std;
int main(){
int a[3];
a[-1]=0;//导致数组越界,其下标小于0
a[1]=1;
a[2]=2;
a[3]=3;//导致数组越界,其下标大于等于数组大小
return 0;
}
3、然后再了解一个词:遍历
所谓遍历,是指沿着某条搜索路线。这个很好理解。数组的遍历就是过一遍数组。熟悉下面代码的意思:
#include
using namespace std;
int main(){
int a[5];
for(int i=0;i<5;i++) cin>>a[i];//依次输入a[0],a[1]……a[4]
for(int i=0;i<5;i++) cout<
return 0;
}
了解了基本概念后来看本次的目标:遍历数据,记录最大最小值,打印输出最大最小值。
首先设置一数组,定义一组固定数据:
int nums[]{ 107, 117, 106, 105, 97, 111 };
//int nums[] = { 107, 117, 106, 105, 97, 111 }; //两种方式均可
for(int i = 0; i <5; i++)
{
if(nums[i] > max)
{
max = nums[i]; //记录最大值
maxIndex = i ; //记录最大值的下标
}
if(nums[i]
{
min = nums[i]; //记录最小值
minIndex = i; //记录最小值的下标
}
}
sizeof是一个操作符(operator),其作用是返回一个对象或类型所占的内存字节数,就是说它是用来描述一个对象占多少内存字节数的,所以它的数组大小应该是sizeof(arrayint)/sizeof(arrayint[0]),这样做的好处是可以让代码更人性化。
#include
using namespace std;
int main()
{
int nums[]={ 107, 117, 106, 105, 97, 111 }; //数组
int max = nums[0]; //最大值
int min = nums[0]; //最小值
int maxIndex = 0; //最大值的下标
int minIndex = 0; //最小值的下标
int numsLen = sizeof(nums)/sizeof(int);
//计算数组长度
for(int i = 0; i
{
if(nums[i] > max)
{
max = nums[i]; //记录最大值
maxIndex = i ; //记录最大值的下标
}
if(nums[i]
{
min = nums[i]; //记录最小值
minIndex = i; //记录最小值的下标
}
}
cout <<"最大值是" <
cout << "最小值是" << min << "\t" <<"下标是"<< minIndex << endl ;
return 0;
}
最后简单提一下c++中的字符数组和字符串string。
C++中字符数组用char str[]可以用来表示一个字符串。数组的大小一定要大于字符串的长度,因为系统会自动补上一个’\0’作为字符串的结束标志,对于未初始化的也补’\0’。
关于字符串和字符数组后面还会提起,因为在应用中可能会多次的出现。要想今天说明白,估计~没有估计,不说了!!
#include
using namespace std;
int main()
{
char str[10] = "I am cool"; // 系统会自动补上'\0'空字符作为结束标志,,未有初始化的也补'\0'
//char str[9] = "I am cool"; // 出错 系统自动补上'\0' 此时字符数组长度不够
//char str[12] = "I am cool"; // 后面未有初始化的也补上'\0' 为 I am cool\0\0\0
if(str[9] == '\0')
{
cout <<"hello world!!" <<endl;
}
return 0;
}
「您的每一个 在看 对我们都是鼓励」