您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 从Scratch到C++
从Scratch到C++对比ScratchC++备注说明程序入口intmain(){}Scratch是面向对象,基于消息机制。C++也是面向对象,但是小学阶段学习的主要是结构化程序设计部分,不涉及可视化消息处理。定义变量inti;charc;floats;longlongm;doubled;boolflag;stringStr;Scratch变量为弱类型。根据变量的值自动转换为数值、字符串等等。变量名没有要求,建议按C++规则命名。C++变量为强类型,必须明确指定变量类型。变量名必须以字母或下划线开头,只能包含字母、数字和下划线三种字符。变量赋值i=0;自增自减i++;++i;i--;--i;累加sum=sum+a;sum+=a;s+=i;等价于s=s+i;s-=i;等价于s=s-i;s*=i;等价于s=s*i;s/=i;等价于s=s/i;(i不等于0)输入cina;输出coutaendl;Scratch中没有换行符。算数运算+-*/%C++中/两个运算数都为整数时,则为整除运算。Scratch没有括号。Scratch通过向下取整实现整除。逻辑运算a&&ba||b!(a)关系运算===!=Scratch只提供三种基本关系,=,=,!=需要配合逻辑运算实现。If语句if(条件)语句;可嵌套If…else…语句If(条件)语句1;Else语句2;if(ab)n=aelsen=b;相当于n=ab?a:b;C++唯一的三目运算符:ab?a:b(条件运算符)switch语句switch(n){case1:语句1;break;case2:语句2;break;……default:语句;}Scratch中没有开关语句。For循环for(i=0;i10;i++)可嵌套条件循环while(条件){循环体}do{循环体}while(条件);特别注意:c++条件循环中的条件是执行循环体的条件。Scratch的重置执行直到的条件是结束循环的条件。无条件循环while(1){循环体}while(true){循环体}C++中有break语句退出循环。Scratch中没有,可以通过实行无条件循环的终止。随机数产生一个[a,b]的随机整数的通用公式rand()%(b-a+1)+a;C++需要使用随机种子:#includectimesrand(time(0))rand()返回0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h,其值为2147483647。字符串连接str1+=str2;提取str2=str1.substr(pos1,len1);字符串长度:len=str.length();len=str.size();字符串比较:str1.compare(str2);str1.compare(pos1,len1,str2,pos2,len2);C++获取字符串中的某个字符通过字符数组实现。字符串的输入getline(cin,str1);gets();puts();字符串结束标志'\0'。Scratch中不支持输出转义字符。数组inta[10];intb[10][10];charc[100];C++数组下标从0开始。数组元素个数定义时就确定,数组访问不可越界。数组名代表数组首元素的地址。Scratch通过列表实现一维、多维数组、栈、队列等等,访问越界不会提示错误。函数过程intfun(inta,charb){Return0;}特别注意:Scratch中递归调用时需要手动建立栈保存变量现场。
本文标题:从Scratch到C++
链接地址:https://www.777doc.com/doc-7945851 .html