第一个C程序
#include <stdio.h>
int main()
{
printf("hello world!\n");
return 0;
}
主函数:
所有C语言代码都有起始入口,这个入口就是主函数main
进入主函数后才能由主函数调用其他函数
每个C语言代码有且只能有一个主函数
int main() //int:返回值类型为整数型,main:函数的名称称之为主函数,():用来输入参数
{
printf("hello world\n");
return 0;
} //{}:内部是函数体,可以做一些处理
函数结构:
返回值类型 函数名(输入参数值)
{
做点什么事情;
return 函数返回值;
}
自己定义两个整数相加的函数
int add(int a,int b)
{
return a + b;
}
写一个两个数相加的C程序
include <stdio.h>
int add(int a,int b)
{
return a + b;
}
int main()
{
int result;
result = add(2,3);
printf("%d",result);
return 0;
}
主函数被自动调用,主函数的返回值给调用的程序,主函数返回值必须为int(如果程序正常结束,我们把返回值设置为0)。
变量
变量必须先声明再使用
常量
不需要被声明
标识符:
必须先声明或者定义才能使用
由我们自己命名,用于表示变量,函数,其他实体
标识符可以用小写大写字母、数字和下划线命名
标识符的第一个字符必须是字母或下划线,不能是数字
标识符是区分大小写的
关键词:
C语言标准规定的,有特殊的意义和用途,不能作为标识符使用
整数数据类型
printf("sizeof char=%d\n",sizeof(char)); //char=1
printf("sizeof short=%d\n",sizeof(short)); //short=2
printf("sizeof int=%d\n",sizeof(int)); //int=4
printf("sizeof long=%d\n",sizeof(long)); //long=4
printf("sizeof long long=%d\n",sizeof(long long)); //long long=8
取值范围
浮点数据类型
float
#include <stdio.h>
int main()
{
float a = 1.234323;
float b = 0.000001;
float c = 365.12345;
printf("%f\n",a);
printf("%f\n",b);
printf("%f\n",c);
return 0;
}
double
#include <stdio.h>
int main()
{
double a = 1.234323;
double b = 0.000001;
double c = 365.12345;
printf("%f\n",a);
printf("%f\n",b);
printf("%f\n",c);
return 0;
}
变量
说明:使用变量必须先声明
1、声明变量后立即初始化
#include <stdio.h>
int main()
{
int a = 100;
printf("%d\n",a);
return 0;
}
2、变量先声明再赋值
#include <stdio.h>
int main()
{
int a;
a = 100;
printf("%d\n",a);
return 0;
}
区别:
变量可以多次赋值,但不能多次初始化
#include <stdio.h>
int main()
{
int a;
a = 100;
printf("%d\n",a);
a = 200;
printf("%d\n",a);
return 0;
}
常量
说明:字面常量无需声明,编译器可以判断类型
字面常量
符号常量:
#include <stdio.h>
#define PRICE 3 //定义符号常量
int main()
{
int num = 10;
int total;
total = num * PRICE;
printf("total:%d",total);
return 0;
}
字符类型的变量和常量
字符变量
说明:字符串常量由双引号包括,字符常量由单引号包括
字符类型的占位符为%c
#include <stdio.h>
int main()
{
printf("%c%c%c%c",'h','e','l','o');
return 0;
}
字符常量所占位置
字符变量char
#include <stdio.h>
int main()
{
char c = 'A';
printf("sizeof char= %d\n",sizeof(char));
printf("sizeof c= %d\n",sizeof(c));
return 0;
}
字符和ASCII的关系
字符和数值存在一一对应映射关系ASCII
定义一个字符变量letter,将其初始化为大写字母A,通过ASCII中的关系,将大写字母A,变成小写字母a,并将小写字母a打印出来。
#include <stdio.h>
int main()
{
char letter = 'A';
letter = letter + 32;
printf("letter= %c",letter);
return 0;
}
字符类型 字符变量
字符在计算机内部由数值保存,若要显示成实际的字符,用占位符%c将十进制转换成字符
字符类型就是整型类型,字符类型只占用一个字节,字符类型命名为char
字符串占用空间大小
eg:
#include <stdio.h>
int main()
{
printf("sizeof HelloWorld = %d\n",sizeof("HelloWorld"));
return 0;
}
结果:sizeof HelloWorld = 11(字符串只有10个字符,但是会在后面添加一个数字0)
数值0:用于标识字符串结束
转义字符
\数值(八进制):转义字符
#include <stdio.h>
int main()
{
printf("\110\145\154\154\175);
return 0;
}