IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 第3章 最简单的C程序设计——顺序程序设计 -> 正文阅读

[C++知识库]第3章 最简单的C程序设计——顺序程序设计

目录

3.1 顺序程序设计举例

【例3.1】

【例3】

3.2 数据的表现形式及其运算

3.2.1 常量和变量

1.常量

2.变量

3.常 变 量

?4.标识符

3.2.2 数据类型?

3.2.3 整型数据

3.2.4 字符型数据

3.2.5 浮点型数据

3.2.6 怎样确定常量的类型

3.3 运算符和表达式

3.3.1 C运算符?

3.3.2 基本的算术运算符?

3.3.3 自增(十十)、自减(——)运算符

3.3.4 算术表达式和运算符的优先级与结合性

3.3.5 不同类型数据间的混合运算?

【例3.3】

3.3.6 强制类型转换运算符?

3.4 C语句

3.4.1 C语句的作用和分类

3.4.2 最基本的语句——赋值语句?

【例3.4】

与赋值有关的一些问题

3.5 数据的输人输出

3.5.1 输入输出举例

【例3.5】

3.5.2 有关数据输入输出的概念

3.5.3 用printf 函数输出数据

【例3.6】

3.5.5 字符输入输出函数

【例3.8】

【例3.9】

【例3.10】


3.1 顺序程序设计举例

【例3.1】

有人用温度计测量出用华氏法表示的温度(如 64°F),今要求把它转换为以摄氏法表示的温度(如17.8℃)

(1)解题思路∶这个问题的算法很简单,关键在于找到二者间的转换公式。根据物理学知识,知道以下转换公式∶

c=\frac{5}{9}(f-32)

其中f代表华氏温度,c 代表摄氏温度

#include <stdio. h>
#int main()
{
  float f,c; //定义f和c为单精度浮点型变量
  f=64.0;    //指定f的值
  c=(5.0/9)*(f-32);//利用公式计算c的值 
  printf("f=%f\nc=%f\n",f,c); //输出c的值
  return 0;
}

(2)运行结果

【例3】

计算存款利息。有1000元,想存一年。有3种方法可选:

  • 活期,年利率为r1;
  • 一年期定期,年利率为r2;
  • 存两次半年定期,年利率为r3。

请分别计算出一年后按3种方法所得到的本息和。

(1)解题思路: ?关键是确定计算本息和的公式。从数学知识可知,若存款额为p0,则: 活期存款一年后本息和为:p1=p0(1+r1) ;一年期定期存款,一年后本息和为:p2=p0(1+r2) ;两次半年定期存款,一年后本息和为:p3=p0(1+r3/2)(1+r3/2)

#include <stdio.h>
int main ()
{	float p0=1000, r1=0.0036, r2=0.0225, r3=0.0198, p1, p2, p3;	//定义变量
    //在定义实型变量的同时,对部分变量赋予初值
	p1=p0*(1+r1);			//计算活期本息和
	p2=p0*(1+r2);			//计算一年定期本息和
	p3=p0*(1+r3/2)*(1+r3/2);	//计算存两次半年定期的本息和
	printf("p1=%f\np2=%f\np3=%f\n",p1, p2, p3);	//在输出p1,p2和p3的值之后,用\n使输出换行
	return 0;
}

(2)运行结果

3.2 数据的表现形式及其运算

3.2.1 常量和变量

1.常量

在程序运行过程中,其值不能被改变的量称为常量。常用的常量有以下几类∶
(1) 整型常量 。如 1000,12345,0,一345等都是整型常量。
(2) 实型常量 。有两种表示形式∶
十进制小数形式 ,由数字和小数点组成。如 123.456,0.345,-56.79,0.0,12.0等。
指数形式 ,如 12.34e3(代表12.34×10^{3}),—346.87e^{-25}(代表一346.87×10^{-25}),
0.145E^{-25}(代表0.145×10^{-25})等。由于在计算机输入或输出时无法表示上角或下角,故
规定 以字母e或 E代表以10为底的指数 。但应注意; e或 E之前必须有数字,且 e或 E后
面必须为整数 。如不能写成 e4,12e2.5。
(3) 字符常量 。有两种形式的字符常量∶
普通字符 ,用 单撇号 括起来的 一个字符 ,如;'a','Z','3','?','#'。不能写成'ab'或
'12'。请注意∶单撇号只是界限符,字符常量只能是一个字符,不包括单撇号。'a'和'A'是不
同的字符常量。字符常量存储在计算机存储单元中时,并不是存储字符(如 a,z,#等)本
身,而是 以其代码(一般采用 ASCII代码)存储的 ,例如字符'a'的 ASCII代码是 97,因此,在
存储单元中存放的是97(以二进制形式存放)。
转义字符 ,除了以上形式的字符常量外,C语言还允许用一种特殊形式的字符常量, 就是以字符"\"开头的字符序列,将"\"后面的字符转换成另外的意义。例如,前面已经遇到过的,在 printf 函数中的'\n'代表一个"换行"符。'\t'代表将输出的位置跳到下一个 Tab 位置(制表位置), 一个Tab 位置为8 列
(4) 字符串常量 。如"boy","123"等,用 双撇号 若干个字符 括起来,字符串常量是双撇号中的全部字符(但不包括双撇号本身)。注意不能错写成'CHINA','boy','123'。 单撇号内只能包含一个字符,双撇号内可以包含一个字符串。
(5) 符号常量 。用#define 指令,指定用一个符号名称代表一个常量。如∶
#define PI 3.1416 ? ?//注意行末没有分号

2.变量

变量代表一个有名字的、具有特定属性的一个 存储单元 。 变量用来存放数据,也就是 存放变量的值 。 在程序运行期间,变量的值是 可以改变 的。 变量必须 先定义,后使用

3.常 变 量

Const int a=3? ? ? ?//定义a为一个整型变量,指定其值为3,而且在变量存在期间其值不能改变

常变量与常量的异同是: 常变量具有变量的基本属性: 有类型,占存储单元,只是不允许改变其值。可以说,常变量是有名字的不变量,而常量是没有名字的不变量。有名字就便于在程序中被引用。 #define Pi 3.1415926?? ?//定义符号常量

const float pi=3.1415926;?? ?//定义常变量

符号常量Pi和常变量pi都代表3.1415926,在程序中都能使用。但二者性质不同: 定义符号常量用#define指令,它是预编译指令,它只是用符号常量代表一个字符串,在预编译时仅进行字符替换,在预编译后,符号常量就不存在了(全置换成3.1415926了),对符号常量的名字是不分配存储单元的。而常变量要占用存储单元,有变量值,只是该值不改变而已。从使用的角度看,常变量具有符号常量的优点,而且使用更方便。有了常变量以后,可以不必多用符号常量。

?4.标识符

标识符就是一个对象的名字。用于标识变量、符号常量、函数、数组、类型

标识符只能由字母、数字和下划线3种字符组成,且第1个字符必须为字母或下划线

注意:变量名中区分大小写字母不能使用关键字作为变量名 ;变量的名字应该尽量反映变量在程序中的作用与含义

3.2.2 数据类型?

所谓类型,就是对数据分配存储单元的安排,包括存储单元的长度(占多少字节)以及数据的存储形式不同的类型分配不同的长度和存储形式

3.2.3 整型数据

3.2.4 字符型数据

3.2.5 浮点型数据

3.2.6 怎样确定常量的类型

3.3 运算符和表达式

3.3.1 C运算符?

3.3.2 基本的算术运算符?

注意:两个实数相除的结果是双精度实数,两个整数相除的结果为整数

%运算符要求参加运算的运算对象(即操作数)为整数结果也是整数?

3.3.3 自增(十十)、自减(——)运算符

++i,--i?? ??? ?在使用i之前,先使i的值加/减1

i++,i--?? ??? ?在使用i之后,使i的值加/减1

++i是先执行i=i+1,再使用i的值;而i++是先使用i的值,再执行i=i+1。

3.3.4 算术表达式和运算符的优先级与结合性

用算术运算符和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子称为C算术表达式。 运算对象包括常量、变量、函数等。

C语言规定了运算符的优先级(例如先乘除后加减),还规定了运算符的结合性。 在表达式求值时,先按运算符的优先级别顺序执行,当在一个运算对象两侧的运算符的优先级别相同时,则按规定的“结合方向”处理。C语言规定了各种运算符的结合方向(结合性), “自左至右的结合方向”又称“左结合性”,即运算对象先与左面的运算符结合。相反“自右至左的结合方向”称为“右结合性”。

3.3.5 不同类型数据间的混合运算?

如果一个运算符两侧的数据类型不同,则先自动进行类型转换使二者成为同一种类型,然后进行运算。整型、实型、字符型数据间可以进行混合运算。规律为:

①+、-、*、/运算的两个数中有一个数为float或double型,结果是double型,因为系统将所有float型数据都先转换为double型,然后进行运算。

②如果int型与float或double型数据进行运算,先把int型和float型数据转换为double型,然后进行运算,结果是double型

③字符(char)型数据与整型数据进行运算,就是把字符的ASCII代码与整型数据进行运算。如果字符型数据与实型数据进行运算,则将字符的ASCII代码转换为double型数据,然后进行运算。

【举例】

int i=3,j;

float f=2.5;

double d=7.5;

printf("%lf",10+'a'+i*f-d/3);

【程序分析】

10+'a'+i*f-d/3

① 进行10+′a′的运算,′a′的值是整数97,运算结果为107

② 由于“*”比“+”优先级高,先进行i*f的运算。先将i与f都转成double型,运算结果为7.5double型

③ 整数107与i*f的积相加。先将整数107转换成双精度数,相加结果为114.5double型。 ④ 进行d/3的运算,先将3转换成double型,d/3结果为2.5double型

⑤ 将10+′a′+i*f的结果114.5与d/3的商2.5相减,结果为112.0,double型

【例3.3】

给定一个大写字母,要求用小写字母输出?

(1)解题思路: ?字符数据以ASCII码存储在内存中,形式与整数的存储形式相同。 所以字符型数据和其他算术型数据之间可以互相赋值和运算。 大小写字母之间的关系是:同一个字母,用小写表示的字符的ASCII代码比用大写表示的字符的ASCII代码大32

#include <stdio.h>
int main()
{
	char c1,c2;
	c1='A'; 			//将字符′A′的ASCII代码放到c1变量中
	c2=c1+32;			//得到字符′a′的ASCII代码,放在c2变量中 
	printf("%c\n",c2);	//输出c2的值,是一个字符
	printf("%d\n",c2);	//输出c2的值,是字符′a′的ASCII代码
	return 0;
}

(2)运行结果?

??

3.3.6 强制类型转换运算符?

(1)类型转换

自动类型转换:在运算时不必用户干预,系统自动进行的类型转换。

强制类型转换:当自动类型转换不能实现目的时,可以用强制类型转换。

(2)强制类型转换运算符

(类型名)(表达式)

(double)a?? ??? ?将a转换成double型

(int)(x+y)?? ??? ?将x+y的值转换成int型

(float)(5%3)?? ??? ?将5%3的值转换成float型

(int)x+y?? ??? ?只将x转换成整型,然后与y相加

int a; float x,y;double b;

a=(int)x 进行强制类型运算(int)x后得到一个int类型的临时值,它的值等于x的整数部分,把它赋给a,注意x的值和类型都未变化,仍为float型。该临时值在赋值后就不再存在了。?

3.4 C语句

3.4.1 C语句的作用和分类

3.4.2 最基本的语句——赋值语句?

表达式语句由一个表达式加一个分号构成,最典型的是由赋值表达式构成一个赋值语句

【例3.4】

给出三角形的三边长,求三角形面积。

①解题思路: ?假设给定的三个边符合构成三角形的条件: 任意两边之和大于第三边。 从数学知识已知求三角形面积的公式为:area=\sqrt{s(s-a)(s-b)(s-c)},其中s=(a+b+c)/2。

#include <stdio.h>
#include <math.h>
int main ()
 {
	double a,b,c,s,area;				//定义各变量,均为double型 
	a=3.67;							//对边长a赋值 
	b=5.43;							//对边长b赋值 
	c=6.21;								//对边长c赋值
	s=(a+b+c)/2; 						//计算s 
	area=sqrt(s*(s-a)*(s-b)*(s-c));		//计算area 
	printf("a=%f\tb=%f\t%f\n",a,b,c); 	//输出三边a,b,c的值 
	printf("area=%f\n",area);			//输出面积area的值
	return 0;
 }

②运行结果?

③程序分析

程序执行部分主要由赋值语句构成,分别实现对a,b,c的赋值,计算s ?和 area。为了提高精度,几个变量全部定义为双精度型。第 10行中 sqrt 函数求平方根的函数。由于要调用数学函数库中的函数,必须在程序的开头加一条井include指令,把头文件"math. h"包含到程序中来。

printf 函数双撇号内字符串中的 '\t' 是转义字符,它的作用是 使输出位置跳到下一个Tab 位置 "。分析 printf 函数的输出情况∶ 原样输出字符 a=, 然后 按%f式输出变量a的值,这时了"a=3.670000",
共10 个字符,然后遇到'\t',输出位置就跳到下一个Tab区。

与赋值有关的一些问题

赋值运算符“=”
“=”的作用是将一个数据赋给一个变量。 例如:a=3的作用是执行一次赋值操作(或称赋值运算)。把常量3赋给变量a。 也可以将一个表达式的值赋给一个变量。
复合赋值运算符
在赋值符=之前加上其他运算符,可以构成复合的运算符。

?a+=3?? ?等价于a=a+3

x*=y+8 ?? ?等价于x=x*(y+8)

x%=3?? ?等价于x=x%3

注意:如果赋值符右边是包含若干项的表达式,则相当于它有括号。

例如, x%=y+3等价于x=x%(y+3),切勿错写为x=x%y+3。?

赋值表达式

赋值表达式的作用是将一个表达式的值赋给一个变量,因此赋值表达式具有计算赋值的双重功能。

赋值表达式求解的过程是: ①求赋值运算符右侧的“表达式”的值,②赋给赋值运算符左侧的变量。既然是一个表达式,就应该有一个值,表达式的值等于赋值后左侧变量的值。 赋值运算符左侧应该是一个可修改值的“左值”(left value,简写为lvalue)。 能出现在赋值运算符右侧的表达式称为“右值”(right value,简写为rvalue)。

赋值表达式 : 变量 ?赋值运算符 ?表达式

a=(b=5) 括号内的b=5是一个赋值表达式,它的值等于5。执行表达式“a=(b=5)”,就是执行b=5和a=b两个赋值表达式。因此a的值等于5,整个赋值表达式的值也等于5。赋值运算符按照“自右而左”的结合顺序,因此,(b=5)外面的括号可以不要,即a=(b=5)和a=b=5等价,都是先求b=5的值(得5),然后再赋给a。

a=b=c=5 ?? ?表达式值为5,a,b,c值均为5

a=5+(c=6) ?? ?表达式值为11,a值为11,c值为6

a=(b=4)+(c=6) ?? ?表达式值为10,a值为10,b等于4,c等于6

a=(b=10)/(c=2)?? ?表达式值为5,a等于5,b等于10,c等于2

a=(b=3*4)?? ?表达式值为12,a,b值均为12

赋值表达式使得赋值操作不仅可以出现在赋值语句中,而且可以出现在其他语句中(如输出语句、循环语句等)

如: printf("%d", a=b); 如果b的值为3,则输出a的值(也是表达式a=b的值)为3。在一个printf函数中完成了赋值和输出双重功能。

赋值表达式和赋值语句

C语言的赋值语句属于表达式语句,由一个赋值表达式加一个分号组成。 在一个表达式中可以包含另一个表达式。?

if ((a=b)>0)max=a;

/*先进行赋值运算(将b的值赋给a),然后判断a是否大于0,如大于0,执行max=a。

请注意,在if语句中的a=b不是赋值语句,而是赋值表达式。*/

注意:区分赋值表达式和赋值语句。 赋值表达式的末尾没有分号,而赋值语句的末尾必须有分号。在一个表达式中可以包含一个或多个赋值表达式,但绝不能包含赋值语句。

变量赋初值

可以用赋值语句对变量赋值,也可以在定义变量时对变量赋以初值。

int a=3; ?? ??? ?//指定a为整型变量,初值为3;相当于int a; a=3;

float f=3.56;?? ?//指定f为浮点型变量,初值为3.56

char c=′a′;?? ?//指定c为字符变量,初值为′a′

int a,b,c=5;?? ?//指定a,b,c为整型变量,但只对c初始化,c的初值为5; ?? ???

?//相当于int a,b,c; c=5;

对几个变量赋予同一个初值:

?int a=3,b=3,c=3;

?int a=b=c=3;?? ?//可以先定义,再用赋值语句,即int a,b,c; a=b=c=3;

3.5 数据的输人输出

3.5.1 输入输出举例

【例3.5】

求ax^{2}+bx+c=0方程的根。a,b,c由键盘输入,设b^{2}-4ac>0。

#include <stdio.h>
#include<math.h>						//程序中要调用求平方根函数sqrt
int main() 
{	double a,b,c,disc,x1,x2,p,q;			//disc用来存放判别式(bb-4ac)的值
	scanf("%lf%lf%lf",&a,&b,&c);			//输入双精度型变量的值要用格式声明″%lf″
	disc=b*b-4*a*c;
	p=-b/(2.0*a);
	q=sqrt(disc)/(2.0*a);
	x1=p+q;x2=p-q; 					//求出方程的两个根
	printf("x1=%7.2f\nx2=%7.2f\n",x1,x2);	//输出方程的两个根
	return 0;
}

【运行结果?】

?

?【程序分析】

  • scanf函数用于输入a,b,c的值。 函数中括号内变量a,b,c的前面,要用地址符&。&a表示变量a在内存中的地址。
  • 双引号内用%lf格式声明,表示输入的是双精度型实数。 格式声明为“%lf%lf%lf”,要求输入3个双精度实数。程序运行时,输入“1 3 2”,两个数之间用空格分开。输入的虽是整数,但由于指定用%lf格式输入,因此系统会先把这3个整数转换成实数1.0,3.0,2.0,然后赋给变量a,b,c。
  • 在printf函数中,在格式符f的前面加了“7.2”,表示在输出x1和x2时,指定数据占7列,其中小数占2列。优点: ①可以根据实际需要来输出小数的位数; ②如果输出多个数据,可使输出数据整齐美观。

3.5.2 有关数据输入输出的概念

3.5.3 用printf 函数输出数据

(1)用来向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据

printf(格式控制,输出表列)

格式控制”是用双引号括起来的一个字符串,称为格式控制字符串,简称格式字符串

包括: ① 格式声明。格式声明由“%”和格式字符组成。作用是将输出的数据转换为指定的格式后输出。 ② 普通字符。普通字符即需要在输出时原样输出的字符。

输出表列是程序需要输出的一些数据,可以是常量、变量或表达式。

(2) printf函数——格式声明

% ?附加字符 ?格式字符

  • ?printf函数输出时,务必注意输出对象的类型应与上述格式说明匹配,否则将会出现错误。
  • 可以在printf函数中的格式控制字符串内包含转义字符,如\n,\t等。
  • 一个格式声明以“%”开头,以格式字符之一为结束,中间可以插入附加格式字符(也称修饰符)。

【例3.6】

用%f输出实数,只能得到6位小数

(1)

#include <stdio.h>
int main()
{	double a=1.0;
	printf("%f\n",a/3);
	return 0;
}

?

虽然a是双精度型,a/3的结果也是双精度型,但是用%f格式声明只能输出6位小数。?

(2)

#include <stdio.h>
int main()
{	double a=1.0;
	printf("%20.15f\n",a/3);
	return 0;
}

一个双精度数只能保证15位有效数字的精确度,即使指定小数位数为50(如用%55.50f),也不能保证输出的50位都是有效的数字。?

注意:在用%f输出时要注意数据本身能提供的有效数字,如float型数据的存储单元只能保证6位有效数字。double型数据能保证15位有效数字。

(1)用来输入数据

scanf(格式控制,地址表列)

  • “格式控制”是用双引号括起来的一个字符串,含义同printf函数。

包括: ① 格式声明。以%开始,以一个格式字符结束,中间可以插入附加的字符。 ② 普通字符。

  • ??地址表列是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。?

?(2)scanf函数——格式声明

% ?附加字符 ?格式字符

  • ?scanf函数中的格式控制后面应当是变量地址,而不是变量名。
  • 如果在格式控制字符串中除了格式声明以外还有其他字符,则在输入数据时在对应的位置上应输入与这些字符相同的字符。
  • 在用“%c”格式声明输入字符时,空格字符和“转义字符”中的字符都作为有效字符输入
  • 在输入数值数据时,如输入空格、回车、Tab键或遇非法字符(不属于数值的字符),认为该数据结束?

3.5.5 字符输入输出函数

1.从计算机向显示器输出一个字符

putchar(c)

【例3.8】

先后输出BOY三个字符。

解题思路: ?定义3个字符变量,分别赋以初值′B′,′O′,′Y′,然后用putchar函数输出这3个字符变量的值。

#include <stdio.h>
int main()
{
	char a='B',b='O',c='Y';	//定义3个字符变量并初始化
	putchar(a);				//向显示器输出字符B
	putchar(b);				//向显示器输出字符O
	putchar(c);				//向显示器输出字符Y
	putchar ('\n');			//向显示器输出一个换行符
	return 0;
}
#include <stdio.h>
int main()
{
	int a=66,b=79,c=89;
 	putchar(a);	
	putchar(b);	
	putchar(c);
 	putchar ('\n');
 	return 0;
}

用putchar函数既可以输出可显示字符,也可以输出控制字符和转义字符。

putchar(c)中的c可以是字符常量、整型常量、字符变量或整型变量(其值在字符的ASCII代码范围内)。

2.getchar函数

向计算机输入一个字符

【例3.9】

从键盘输入BOY 3个字符,然后把它们输出到屏幕。

解题思路: ?用3个getchar函数先后从键盘向计算机输入BOY 3个字符,然后用putchar函数输出。

#include <stdio.h>
int main()
{	char a,b,c;	//定义字符变量a,b,c
	a=getchar();	//从键盘输入一个字符,送给字符变量a
	b=getchar();	//从键盘输入一个字符,送给字符变量b
	c=getchar();	//从键盘输入一个字符,送给字符变量c
	putchar(a); 	//将变量a的值输出
	putchar(b); 	//将变量b的值输出 
	putchar(c); 	//将变量c的值输出
	putchar('\n');//换行
	return 0;
}
  • getchar函数没有参数。 函数的值就是从输入设备得到的字符。
  • 只能接收一个字符。 如果想输入多个字符就要用多个函数。
  • ?用getchar函数得到的字符可以赋给一个字符变量或整型变量,也可以作为表达式的一部分。如,putchar(getchar());将接收到的字符输出。

【例3.10】

改写例3.3程序,使之可以适用于任何大写字母。从键盘输入一个大写字母,在显示屏上显示对应的小写字母。

解题思路: ?用getchar函数从键盘读入一个大写字母,把它转换为小写字母,然后用putchar函数输出该小写字母。

#include <stdio.h>
int main ()
{
	char c1,c2;
	c1=getchar();	//从键盘读入一个大写字母,赋给字符变量c1
	c2=c1+32;	//得到对应的小写字母的ASCII代码,放在字符变量c2中
	printf("大写字母: %c\n小写字母: %c\n",c1,c2);	//输出c1,c2的值
	return 0;
}

?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-23 15:34:46  更:2021-12-23 15:36:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 12:48:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码