编程语言的的写法虽然各不相同,但是思想都是大同小异的,或者说各种编程语言的都在互相借鉴并完善自己。
今天给大家展示五种编程语言的基础语句,横向对比,这对于小伙伴选择编程语言、学习第二门编程语言是很有帮助的,一起来看一下!
一、Hello world
1.C
#include<stdio.h> //包含头文件
/*
*主函数
*/
int main(){
printf("Hello World");
return 0;
}
2.java
package helloWorld;//包名
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello world");
}
}
3.python
print 'Hello world'
4.php
<?php
echo 'Hello world';
?>
5.javascript
document.write('Hello world');
二、注释
C | java | python | php | javascript |
---|---|---|---|---|
//和 /**/ | //和 /**/ | # | //和 /**/ | //和 /**/ |
三、数据类型
1.C
C是强类型语言
![](https://img.haomeiwen.com/i7792042/7ee92e25a1252bba.png)
![](https://img.haomeiwen.com/i7792042/602e0842ff24dc12.png)
![](https://img.haomeiwen.com/i7792042/b59485071caca8ee.png)
有科学计数法
注意:C中没有字符串类型
2.java
java是强类型语言
![](https://img.haomeiwen.com/i7792042/0627a24dba17b405.png)
![](https://img.haomeiwen.com/i7792042/1af6fe1388c9d4b3.png)
有科学计数法
字符串String是引用类型,它是一个类。
3.python
python是弱类型语言
1.整数
例如:1
,100
,-8080
,0
,等等。
十六进制例如:0xff00
,0xa5b4c3d2
,等等。
2.浮点数
如1.23
,3.14
,-9.01
,等等。科学计数法表示,把10用e替代,1.23x10^9就是1.23e9
,0.000012可以写成1.2e-5
,等等。
3.字符串
比如'abc',"xyz"等等
多行字符串,用'''...'''表示:
'''Line 1
Line 2
Line 3'''
还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串(免转义多行字符串):
r'''Python is created by "Guido".
It is free and easy to learn.
Let's start learn Python in imooc!'''
4.布尔值
只有True
、False
两种值(请注意大小写),也可以通过布尔运算计算出来。
5.空值
用None
表示。
4.php
php是弱类型语言
1.布尔类型
只有两个值,一个是true,另一个false。
2.整型
整型(integer),如:
<?php
$data_int = 1234; // 十进制数
$data_int = -567; // 一个负数
$data_int = 0123; // 八进制数(等于十进制的 83)
$data_int = 0x1a; // 十六进制数(等于十进制的 26)
?>
3.浮点型
浮点型(浮点数、双精度数或实数),例如:
<?php
$num_float = 1.234; //小数点
$num_float = 1.2e3; //科学计数法,小写e
$num_float = 7.0E-10; //科学计数法,大写E
?>
![](https://img.haomeiwen.com/i7792042/12505587fc54f243.jpg)
![](https://img.haomeiwen.com/i7792042/5084d8a67972d99b.jpg)
多行字符串:输入定界符“<<<”,接着是自定义标识符,结尾处的标识符也必须是一样的。并以“;”号结束,
![](https://img.haomeiwen.com/i7792042/43a94408d1caf1e1.jpg)
4.资源
举例如下:
<?php
$file=fopen("f.txt","r"); //打开文件
$con=mysql_connect("localhost","root","root"); //连接数据库
$img=imagecreate(100,100);//图形画布
?>
5.空类型
NULL。
5.javascript
Js是弱类型语言。
1.数字:JavaScript 只有一种数字类型。数字可以带小数点,也可以不带。
var x1=34.00; //使用小数点来写
var x2=34; //不使用小数点来写
科学计数法:
var y=123e5; // 12300000
var z=123e-5; // 0.00123
2.字符串:
var answer="Nice to meet you!";
var answer="He is called 'Bill'";
var answer='He is called "Bill"';
3.布尔值:布尔(逻辑)只能有两个值:true 或 false。
4.数组。
5.对象。
6.null(空)。
7.Undefined(未定义)。
四、变量声明
1.C
int a = 18;
char b = 'Q';
2.java
int a = 18;
String b = "QAQ";
3.python
a = 18
b = 'QAQ'
4.php
$a = 18;
$b = 'QAQ';
5.javascript
var a = 18;
var b = 'QAQ';
五、数组与集合
1.C
C的数组用{}
表示。
//第一种形式
int arrFirst[3] = {1,2,3};
//第二种形式
int arrSecond[] = {1,2,3};
//第三种形式
int arrThird[3];
//给arrThird数组每个元素初始化
arrThird[0] =1;
arrThird[1] =2;
arrThird[3] =3;
//调用
arrThird[0] ;
//字符串的声明
char 字符串名称[长度] = "字符串值";
//调用
printf(“%s”,字符数组名字);
注:C中没有获取数组长度的函数。
2.java
1.数组
java的数组用{}
表示。
//声明数组
String[] subjects = new String[5];
// 分别为数组中的元素赋值
subjects[0] = "Oracle";
subjects[1] = "PHP";
subjects[2] = "Linux";
subjects[3] = "Java";
subjects[4] = "HTML";
//直接定义一个长度为5的字符串数组,保存考试科目信息
String[] subjects = {"Oracle","PHP","Linux","Java","HTML"};
//调用
subjects[3];
//获取数组的长度
subjects.length
2.序列ArrayList
//声明
List a = new ArrayList();
//插值
a.add(123);
//删值
a.remove(123);
//改值
a.set(0,234);
//查值
a.get(0);
//获取序列长度
a.size();
3.数集
//声明
Set a = new HashSet();
//插值
a.add(123);
//删值
a.remove(123);
//查值(是否存在)
a.contents(123);
//获取数列长度
a.size();
4.映射
//声明
Map m = new HashMap();
//增、改值
m.put("abc",123);
//查值
m.get("abc");
//删值
m.remove("abc");
//获取映射长度
m.size();
3.python
1.序列list
序列用[]
。
#声明
L = ['Michael', 100, True]
#调用
L[0]
#追加
L.append(123)
#插入
L.insert(1,234)
#删除
L.pop(0)#没有0即删除最后一项
#修改
L[1] = 345
#序列长度
len(L)
2.元组tuple
元组tuple用()
表示
#声明
t = ('Adam', 'Lisa', 'Bart')
f=('Bart',)
#没有增,没有删,没有改方法
#查
t[0]
#元组长度
len(t)
3.映射dict
dict用{}
表示
#声明
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
#查
d['Adam'] #会报错
d.get('Adam') #不会报错
#增、改
d['Paul'] = 100
#删
dict.pop('Adam')
#映射长度
len(d)
4.集合set
set用set([])
表示,即set()中传入一个list
#声明
s = set(['a','b',1,2,3])
#增
s.add(4)
#删
s.remove(4)
#查(判断是否在内)
4 in s
#集合长度
len(s)
4.PHP
1.数组、映射
PHP中的数组用array()
表示
/**
*声明
*/
//索引式数组(数组)
$fruit1 = ["apple","banana","pineapple"];
//关联式数组(映射)
$fruit2 = $fruit = [
'apple'=>"苹果",
'banana'=>"香蕉",
'pineapple'=>"菠萝"
];
/**
*增
*/
//从头添加
array_unshift($fruit1,"orange","pear");
//从尾添加
array_push($fruit1,"orange","pear")
/**
*删
*/
//从头删
$fruit1 = array_shift($fruit1);
//从尾删
$fruit1 = array_pop($fruit1);
/**
*查
*/
$fruit1[0];
$fruit2['apple'];
/**
*改
*/
$fruit1[0] = 'watermelon';
$fruit2['apple'] = ''蘋果;
/**
*数组长度
*/
count($fruit1);
sizeof($fruit1);
4.javascript
1.数组
Js中的数组用[]
表示
/**
*声明
*/
//方法一
var myarr=new Array();
myarr[1]=" 张三";
myarr[2]=" 李四";
//方法二
var myarray = new Array(66,80,90,77,59);
//方法三
var myarray = [66,80,90,77,59];
/**
*操作
*/
//增
myarray[5]=88;
//查
myarray[2];
//改
myarray[2] = 81;
//删
myarray.splice(1,1);//第一个参数是要删除元素的索引位置,第二个参数是删几个元素
//数组长度
myarray.length;
2.集合Set
//创建Set对象
//1.用new创建Set
let s1 = new Set();
let s2 = new Set([1,2,3]);
//2.用add命令增加元素
s1.add(5);
//也可以用.add连续加多个
s1.add(100).add(200);
//3.用size属性获取元素个数
console.log(s1.size);
//注意,不能用s.length,它没有定义这个属性
//4.用has判断元素是否存在
console.log(s1.has(100));//返回bool结果,true表示有,false表示无
//5.用delete删除元素
s1.delete(100); //返回bool结果,true表示删除成功,false表示删除失败
s1.clear();//则是清除所有的元素
3.映射map
//1.创建一个map
var myMap=new Map();
//2.map的长度
myMap.size
//3.增加/修改键值对
myMap.set(key, value);
//4.删除键值对
myMap.delete(key);
//5.查值
myMap.get(key);
六、运算符
1、算术运算符
C、Java、PHP、js的算术运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/2f5cc42a58b4d3d5.png)
![](https://img.haomeiwen.com/i7792042/ec64992ecba33482.png)
Python的算术运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/55c2c3221d7fda9b.png)
2、赋值运算符
C、Java、PHP、js的赋值运算符包括下表所列
表达式 | 说明 |
---|---|
= | 将等号右边的式子或结果付给等号左边的量 |
+= | a+=5等同于a=a+5 |
-= | a-=5等同于a=a-5 |
*= | a=5等同于a=a5 |
/= | a/=5等同于a=a/5 |
%= | a%=5等同于a=a%5 |
Python的赋值运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/2f0b85d6a25458f6.png)
3、关系(或称比较)运算符
C、Java、js的关系运算符包括下表所列
![](https://img.haomeiwen.com/i7792042/5cc6fc633c7ad429.png)
Python、PHP的关系运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/f563f33665af033c.png)
注意:js和PHP中===
表示全等
4、逻辑运算符
C、Java、PHP、js的逻辑运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/1bd34d21918af27d.png)
Python、PHP的逻辑运算符包括下图所列
![](https://img.haomeiwen.com/i7792042/e87b8c304270530c.png)
5、三目运算符
C、Java、PHP、js的三目运算符如下
判定条件?为真时的结果:为假时的结果
python的三目运算符如下
为真时的结果 if 判定条件 else 为假时的结果
6、按位运算符
运算符 | 含义 | 描述 |
---|---|---|
& | 按位与 | 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0 |
l | 按位或 | 两个相应的二进制位中只要有一个为1,该位的结果值为1 |
^ | 按位异或 | 若参加运算的两个二进制位值相同则为0,否则为1 |
~ | 取反 | ~是一元运算符,用来对一个二进制数按位取反,即将0变1,将1变0 |
<< | 左移 | 用来将一个数的各二进制位全部左移N位,右补0 |
>> | 右移 | 将一个数的各二进制位右移N位,移到右端的低位被舍弃,对于无符号数,高位补0 |
七、循环语句
1、for循环
1.C
int myArray[] = {1,2,3,4,5};
int i;
for(i = 0;i<5;i++){
printf("数组数字:%d\n", myArray[i]);
}
2.java
String[] str1 = {"Oracle","PHP","Linux","Java","HTML"};
//普通for循环
for(int i = 0;i<str.length;i++){
System.out.println("课程是"+str[i]);
}
List<String> str2 = new ArrayList<String>();
str2.add("a");
str2.add("b");
str2.add("c");
str2.add("d");
//foreach循环
for(String eachStr:str2){
System.out.println("字母是"+eachStr);
}
//使用Iterator迭代器遍历一
Iterator it<String> = str2.iterator();
while(it.hasNext()){
System.out.println("字母是"+it.next());
}
//使用Iterator迭代器遍历二
for (Iterator<String> it = str2.iterator(); it.hasNext();) {
System.out.println("字母是"+it.next());
}
3.Python
#遍历列表
L = ['Adam', 'Lisa', 'Bart']
for name in L:
print name
#指定遍历范围
for i in range(0,len(L)-2):
print("下标为 %s 的值为 %s" %(i,L[i]))
#遍历集合
s = set(['Adam', 'Lisa', 'Bart'])
for name in s:
print name
#遍历字典
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
#方法一
for (k,v) in dict.items():
print "key:"+k+",value:"+str(v)
#方法二
for d,x in dict.items():
print "key:"+k+",value:"+str(v)
4.PHP
$myArr1 = array("苹果","香蕉","橙子");
$myArr2 = array("苹果"=>"apple","香蕉"=>"banana","橙子"=>"orange");
//for循环
for($i = 0;$i<count($myArr1)){
echo $myArr1[$i];
}
//foreach遍历关联式数组
foreach ($myArr1 as $v){
echo $v;
}
//foreach遍历索引式数组
foreach ($myArr2 as $k => $v){
echo "$k的值是$v";
}
5.js
//for循环
for (var k = 0, length = arr.length; k < length; k++) {
alert(array[k]);
}
//foreach方法
var arr = [1, 2, 3, 4];
arr.forEach(function (element, index, array) {
// element: 指向当前元素的值
// index: 指向当前索引
// array: 指向Array对象本身
alert(element);
});
//for...of方法遍历Set
let s2 = new Set([1,2,3]);
for(let e of s2) {
console.log(e);
}
//foreach方法遍历Set
s2.forEach(e=>console.log(e));
//for...in方法遍历map
var map = new Map();
map.set("a","apple");
map.set("b","bee");
for(var key in map){
console.log("属性:" + key + ",值:" + map[key]);
}
2、while循环
1.C、java、PHP、js
while(判断条件){
执行代码块
}
2.Python
while 判断条件:
执行代码快
3、do…while循环
1.C、java
do{
执行代码快
}while(判断条件);
2.PHP、js
do{
执行代码快
}while(判断条件)
3.Python
Python不支持do … while语法、while(无限循环)和break组合起来替换 do … while。
八、分支判断语句
1、if…else语句
1.C、java、PHP、js
if(判断条件一){
执行代码块一
}else if(判断条件二){
执行代码块二
}else if(判断条件三){
执行代码块三
}else{
最后的执行代码
}
2.Python
if 判断条件一:
执行代码块一
elif 判断条件二:
执行代码块二
elif 判断条件三:
执行代码块三
else:
最后的执行代码
2、switch语句
1.C、java、PHP、js
switch(表达式){
case 常量表达式一:
执行代码块一
break;
case 常量表达式二:
执行代码块二
break;
……
case 常量表达式N:
执行代码块N
break;
default:
执行代码块N+1
}
2.Python
Python当中没有switch。
八、函数/方法
1.C
#include <stdio.h> //头文件
/*
*一个打印矩形的函数
*/
int Matrix(int n){
int i,j;
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
printf("*");
}
printf("\n");
}
return 0;
}
//函数的调用
int main(){
Martix(5);
return 0;
}
2.java
package com.demo.example //包名
public class MakeMatrix{
/*
*一个打印矩形的函数
*/
public void Matrix(int n){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
System.out.print("*");
}
System.out.print("\n");
}
}
//调用
public static void main(String[] args){
MakeMarix mm = new Matrix();
mm.Matrix(5);
}
}
3.Python
#一个打印矩形的函数
def matrix(n):
for i in range(1,n+1):
for j in range(1,n+1):
print "*"
print "\n"
return
#调用
matrix(5)
4.PHP
<?php
/*
*一个打印矩形的函数
*/
function matrix($n){
for($i=0;$i<$n;$i++){
for($j=0;$j<$n;$j++){
echo "*";
}
echo "<br/>";
}
}
//调用
matrix(5);
?>
5.Js
/*
*一个打印矩形的函数
*/
function matrix(n){
for(var i=0;i<n;i++){
for(var j=0;j<n;j++){
document.write("*"};
}
document.write("<br/>");
}
}
//调用
matrix(5);
网友评论