「转载」Python与C语言的异同
笔者自学了一段python,在此总结以下python 与 c 的异同,笔者才疏学浅,若有错误,还望斧正。
一.相似点
1.print,格式化输出符相似
以下是python的代码:
name = "小明"
print("我的名字叫%s,请多多关照"% name)
1
2
以下是C的代码:
#include<stdio.h>
main()
{
char name []="小明";
printf("我的名字叫%s",name);
}
1
2
3
4
5
6
我们可以看到两者中python更加简洁些(笑,print两者十分相似,格式化输出都是用%,并且 %d,%lf,%%,%x等 表达含义几乎一模一样。
2.if else语法相似:
在Python中,if语句:
age = int(input("请输入年龄:"))
if age >= 18:
print("你可以进入网吧happy")
else:
print("请你回家写作业")
1
2
3
4
5
在C语言中,if语句:
#include<stdio.h>
main()
{
int a;
printf("请输入你的年龄:");
scanf("%d",&a);
if (a<=18)
printf("滚回家写作业去");
else
printf("客官客官,里面请");
}
1
2
3
4
5
6
7
8
9
10
11
可以看出两者的if-else格式大致相似,同时两者都不可以用a<b<c这种连不等式。
二.相似点中的不同点
1.print与格式化输出的不同:
我们看到python中print("我的名字叫%s,请多多关照"%name)
python中需要使用 %加变量名
而C语言中printf("我的名字叫%s",name);
C中是直接用逗号分隔变量的。
并且python中多个格式化输出要用元组 多个变量要用括号括起来 的形式,如:
weight = 6.5
price = 7.2
money = price * weight
print("苹果的单价是%.2f 元/斤,苹果重%.2f 克,总金额为%.2f元"%(price,weight,money))
1
2
3
4
2.if-else的不同点:
python中的if与else的格式必须使用到缩进
C语言中不需要缩进,但是使用if-else时,多条语句就必须用大括号括起来
if (a<=18)
{printf("滚回家写作业去");
printf("不然我就报警了");
}
1
2
3
4
同时C语言中的else if 在python中可以用elif代替
C语言中判断要用()括起来,而python中要用 : 结尾
三.截然不同之处
1.python中可以用print().format()的方法进行格式化输出。
例如python中:
print('{0} {1} {0}'.format('hello','world'))
1
2.python的变量可以随处定义,而C语言中就必须在开头就用int , float,double,unsigned int,等进行定义
如C中必须在开头定义字符串:
#include<stdio.h>
main()
{
char name []="小明";
}
1
2
3
4
5
而python只需要用 = 进行赋值就可以定义变量了,并且变量不需要声明:
name = "小明"
1
3.python中的输入函数与C中的不同
python中可以使用input输入,并且输入的内容为字符串类型
a = input()
print(type(a))
1
2
我们执行这段代码,会发现打印出的class 为 str
因此我们如果想计算加减乘除,我们就需要用到int等转换类型的函数
C语言中使用什么定义的,它的类型就是什么int a;就是整形。