💂 个人主页:苏州程序大白 💂 个人社区:CSDN全国各地程序猿 🤟作者介绍:中国DBA联盟(ACDU)成员,CSDN全国各地程序猿(媛)聚集地管理员。目前从事工业自动化软件开发工作。擅长C#、Java、机器视觉、底层算法等语言。2019年成立柒月软件工作室,2021年注册苏州凯捷智能科技有限公司 💅 有任何问题欢迎私信,看到会及时回复
章节概要:C 语言的特点、计算机工作原理、高级计算机语言、编译器、编程步骤、C 编程机制
.c
结尾章节概要:C 语言程序简单示例、
#include
与头文件、主函数main
、注释、花括号、声明与变量、赋值、printf
函数、return
语句、C 语言程序基础结构、多条声明、打印多个值、多个函数、关键字和保留标识符
#include <stdio.h>
int main(void) //一个简单的C程序
{
int num; //定义一个名为num的变量
num = 1; //为num赋一个值
printf("I am a simple "); //使用printf函数
printf("computer.\n");
printf("my favourite number is %d because it is fitst.\n", num);
return 0;
}
//把2英寻转换成英尺
#include <stdio.h>
int main(void)
{
int feet, fathoms;
fathoms = 2;
feet = 6 * fathoms;
printf("There are %d feet in %d fathoms!\n", feet, fathoms);
printf("Yes,I said %d feet!\n", 6 * fathoms);
return 0;
}
int feet, fathoms;
语句,使用多条声明声明了两个变量,使用逗号,
隔开,此语句与int feet;
+int fathoms;
等价printf()
进行了两次替换,按顺序将feet
、fathoms
替换了两个%d
2、第二个printf()
说明待打印的值不一定是变量,只要可求值得出合适类型值的项即可#include <stdio.h>
void def(void)
{
printf("hello world!");
}
int main(void)
{
def();
return 0;
}
C90
标准新增关键字,斜体表示C99
标准新增关键字,粗斜体 表示C11
标准新增关键字章节概要:交互式程序、变量与常量数据、数据、数据类型关键字、C 语言基本数据类型、进制打印显示(int 类型中)、可移植类型、使用程序获得数据类型大小
#include <stdio.h>
int main(void)
{
float weight;
float value;
printf("Please enter your weight in pounds:");
scanf("%f", &weight);
value = 1700.0 * weight * 14.5833;
printf("your weight in platinum is worth $%.2f.\n", value);
return 0;
}
float
浮点数类型,浮点类型可以储存带小数的数字,详细说明见本章后面部分printf
处使用%f
处理浮点值了%.2f
用于精确控制输出,指定保留小数后两位scanf()
函数用于读取键盘的输入,%f
说明scanf()
读取输入浮点数,&weight
告诉scanf()
把输入的值赋给名为weight
的变量scanf()
函数使用&
符号表明找到weight
变量的地点,下章将详细讨论,目前请按照这样写3.16 * 10^7
sizeof()
获取以字节为单位的类型大小,C99和C11提供%zd
匹配sizeof()
返回值,其余不支持的编译器可用%u
或%lu
代替#include <stdio.h>
int main(void)
{
printf("Type int has a size of %zd bytes.\n", sizeof(int));
printf("Type char has a size of %zd bytes.\n", sizeof(char));
printf("Type float has a size of %zd bytes.\n", sizeof(float));
return 0;
}
章节概要:字符串简介、char 类型数组与 null 字符、
strlen()
函数、常量与 C 预处理器、明示常量、printf()
函数
#include <stdio.h>
#include <string.h>
#define DENSITY 62.4 // 定义人体密度
int main(void)
{
float weight, volume;
int size, letters;
char name[40];
printf("Hi! What's your first name?\n");
scanf("%s", name);
printf("%s,whats's your weight in pounds?\n", name);
scanf("%f", &weight);
size = sizeof(name);
letters = strlen(name);
volume = weight / DENSITY;
printf("well, %s, your volume is %2.2f cubic feet\n", name, volume);
printf("Also, your first name has %d letters,\n", letters);
printf("and we have %d bytes to store it.\n", size);
return 0;
}
%s
转换说明来处理字符串的输入和输出。注意,在scanf
中,name
没有&
前缀,而weight
有(稍后解释,&weight
和name
都是地址)DENSITY
定义为 62.4strlen()
获取字符串的长度"I came from America"
"
不是字符串的一部分,仅是告知编译器它括起来的是字符串,就如单引号'
用于标识单个字符一样char
类型数组中。数组由连续的存储单元组成,字符串的字符被储存在相邻的存储单元中,每个单元储存一个字符[]
表示这是一个数组%s
来转换打印一个字符串char
不是同一种类型,因为字符串最后有空字符标识,而char
只存储该字符strlen()
函数可以得到字符串的字符长度,且strlen()
并不会计入空字符使用常量名比数字表达的信息更多,如area = PI * d与area = 3.14 * d相比更加直观
对于程序中多次使用同一个常量时,如果常量的值需要修改,只需要修改常量值即可
可以定义变量,将其值定义为所需的值,但这样程序可能会无意间改变它的值
C 预处理器
定义,格式为
#define 常量名 值
编译程序时,所有的常量名都会被替换为它们的值
定义常量时,习惯上建议全用大写,以此告知他人这是一个常量,提高程序可读性;此外也有小众习惯使用c_变量名
或k_变量名
表示常量
注意:define
常量名后的内容用于替换符号常量,不要将#define NUM 20
写成#define NUM = 20
,这样定义的WORD值为=20
而非20
C90标准新增限定词const
,表示只读,也可用此作为常量使用(其只表明只读变量),如const float PI=3.14
C 头文件
limits.h
与
float.h
分别提供与整数与浮点数类型大小限制相关的说明,如
limits.h
中有类似以下代码:
#define INT_MAX +32767
#define INT_MIN -32768
limits.h
头文件,则可以使用printf()
与%d
转换输出该常量 32 位 int 的值相似的,float.h
头文件下也有一些明示常量:
float.h
头文件下也有一些明示常量:limits.h
与
float.h
分别提供与整数与浮点数类型大小限制相关的说明,如
limits.h
中有类似以下代码:
#define INT_MAX +32767
#define INT_MIN -32768
limits.h
头文件,则可以使用printf()
与%d
转换输出该常量 32 位 int 的值limits.h
中的一些明示常量:[外链图片转存中…(img-JqEyomEq-1653357330355)]float.h
头文件下也有一些明示常量: