C 结构 在本教程中,您将通过示例了解 C 编程中的结构类型。 在 C 编程中,结构(或结构)是一个名称下的变量(可以是不同类型)的集合。 定义结构 在创建结构变量之前,您需要定义其数据类型。要定义一个结构,struct 使用了关键字。 结构的语法 struct structureName { dataType member1; dataType member2; ... }; 例如, struct Person { char name[50]; int citNo; float salary; }; 这里,一个派生类型 struct Person 被定义
C 编程字符串 在本教程中,您将了解 C 编程中的字符串。您将通过示例学习声明、初始化它们并将它们用于各种 I/O 操作。 在C编程中,字符串是一个以空字符结尾的字符序列\0 .例如: char c[] = c string; 当编译器遇到用双引号括起来的字符序列时,它会附加一个空字符 \0 默认在最后。 如何声明一个字符串? 声明字符串的方法如下: char s[5]; 在这里,我们声明了一个 5 个字符的字符串。 如何初始化字符串? 您可以通过多种方式初始化字符串。 char c[] = abcd; char c[50] = abcd; char c[]
C 动态内存分配 在本教程中,您将学习使用标准库函数在 C 程序中动态分配内存:malloc()、calloc()、free() 和 realloc()。 如您所知,数组是固定数量值的集合。一旦声明了数组的大小,就无法更改。 有时您声明的数组的大小可能不足。要解决此问题,您可以在运行时手动分配内存。这在 C 编程中称为动态内存分配。 为了动态分配内存,库函数是 malloc() , calloc() , realloc() 和 free() 被使用。这些函数在 <stdlib.h> 中定义 头文件。 C malloc() “malloc”这个名字代表内存分配。 mall
C 传递地址和指针 在本教程中,您将学习在示例的帮助下将地址和指针作为参数传递给函数。 在 C 编程中,也可以将地址作为参数传递给函数。 要在函数定义中接受这些地址,我们可以使用指针。这是因为指针用于存储地址。举个例子吧: 示例:将地址传递给函数 #include <stdio.h> void swap(int *n1, int *n2); int main() { int num1 = 5, num2 = 10; // address of num1 and num2 is passed swap( &num1, &num2)
数组和指针之间的关系 在本教程中,您将了解 C 编程中数组和指针之间的关系。您还将学习使用指针访问数组元素。 在了解数组和指针之间的关系之前,请务必检查以下两个主题: C 数组 C 指针 数组和指针的关系 数组是一个顺序数据块。让我们编写一个程序来打印数组元素的地址。 #include <stdio.h> int main() { int x[4]; int i; for(i = 0; i < 4; ++i) { printf(&x[%d] = %p\n, i, &x[i]); } printf(Ad
C 指针 在本教程中,您将了解指针;什么是指针,如何使用它们以及在示例的帮助下使用它们时可能遇到的常见错误。 指针是 C 和 C++ 编程的强大功能。在学习指针之前,我们先来了解一下C编程中的地址。 C 中的地址 如果你有一个变量 var 在你的程序中,&var 会给你它在内存中的地址。 我们在使用 scanf() 时多次使用地址 功能。 scanf(%d, &var); 这里,用户输入的值存放在var的地址中 多变的。让我们举一个实际的例子。 #include <stdio.h> int main() { int var = 5; print
将数组传递给 C 中的函数 在本教程中,您将通过示例学习将数组(一维和多维数组)传递给 C 编程中的函数。 在 C 编程中,您可以将整个数组传递给函数。在我们学习之前,让我们看看如何将数组的各个元素传递给函数。 传递单个数组元素 将数组元素传递给函数类似于将变量传递给函数。 示例 1:传递单个数组元素 #include <stdio.h> void display(int age1, int age2) { printf(%d\n, age1); printf(%d\n, age2); } int main() { int ageArray[] = {2,
C 多维数组 在本教程中,您将通过示例学习处理多维数组(二维和三维数组)。 在C编程中,可以创建数组数组。这些数组称为多维数组。例如, float x[3][4]; 这里,x 是一个二维 (2d) 数组。该数组可以容纳 12 个元素。你可以把数组想象成一个3行的表,每行4列。 同样,您可以声明一个三维 (3d) 数组。例如, float y[2][4][3]; 这里,数组 y 可以容纳24个元素。 初始化多维数组 以下是如何初始化二维和三维数组: 二维数组的初始化 // Different ways to initialize two-dimensional array
C 数组 在本教程中,您将学习使用数组。您将通过示例学习声明、初始化和访问数组的元素。 数组是可以存储多个值的变量。比如你要存储100个整数,你可以为它创建一个数组。 int data[100]; 如何声明一个数组? dataType arrayName[arraySize]; 例如, float mark[5]; 在这里,我们声明了一个数组,mark , 浮点型。它的大小是5。意思是,它可以容纳5个浮点值。 请务必注意,数组的大小和类型一经声明就无法更改。 访问数组元素 您可以通过索引访问数组的元素。 假设你声明了一个数组 mark 如上。第一个元素是 ma
C 存储类 在本教程中,您将了解局部和全局变量的范围和生命周期。此外,您还将了解静态变量和寄存器变量。 C编程中的每个变量都有两个属性:类型和存储类。 类型是指变量的数据类型。而且,存储类决定了变量的范围、可见性和生命周期。 存储类有4种: 自动 外部 静态 注册 局部变量 在块内声明的变量是自动变量或局部变量。局部变量只存在于声明它的块内。 举个例子吧。 #include <stdio.h> int main(void) { for (int i = 0; i < 5; ++i) { printf(C programming);
C 递归 在本教程中,您将通过示例学习在 C 编程中编写递归函数。 调用自身的函数称为递归函数。而且,这种技术被称为递归。 递归是如何工作的? void recurse() { ... .. ... recurse(); ... .. ... } int main() { ... .. ... recurse(); ... .. ... } 递归一直持续到满足某个条件来阻止它。 为了防止无限递归,可以在一个分支进行递归调用而另一个不进行递归调用的情况下使用 if...else 语句(或类似方法)。 示例:使用递归的自然数之和
C 编程中用户定义函数的类型 在本教程中,您将了解使用函数解决同一问题的不同方法。 下面这4个程序检查用户输入的整数是否为质数。 下面所有这些程序的输出都是相同的,并且我们在每个示例中都创建了一个用户定义的函数。但是,我们在每个示例中采用的方法是不同的。 例1:不传参数也无返回值 #include <stdio.h> void checkPrimeNumber(); int main() { checkPrimeNumber(); // argument is not passed return 0; } // return type is v
C 用户定义函数 在本教程中,您将通过示例学习在 C 编程中创建用户定义的函数。 函数是执行特定任务的代码块。 C 允许您根据需要定义函数。这些函数称为用户定义函数。例如: 假设,您需要创建一个圆并根据半径和颜色为其着色。你可以创建两个函数来解决这个问题: createCircle() 功能 color() 功能 示例:用户自定义函数 这是一个添加两个整数的示例。为了执行这个任务,我们创建了一个用户定义的 addNumbers() . #include <stdio.h> int addNumbers(int a, int b); // functi
C 函数 在本教程中,您将了解 C 编程中的函数(用户定义函数和标准库函数)。此外,您还将了解为什么在编程中使用函数。 函数是执行特定任务的代码块。 假设,您需要创建一个程序来创建一个圆圈并为其着色。你可以创建两个函数来解决这个问题: 创建圆函数 创建颜色函数 将一个复杂的问题分成更小的块,使我们的程序易于理解和重用。 函数类型 C语言中的函数有两种: 标准库函数 用户自定义函数 标准库函数 标准库函数是 C 编程中的内置函数。 这些函数在头文件中定义。例如, printf() 是一个标准库函数,用于将格式化的输出发送到屏幕(在屏幕上显示输出)。此函数在 stdio
C goto 语句 在本教程中,您将学习在 C 编程中创建 goto 语句。此外,您还将了解何时使用 goto 语句以及何时不使用它。 goto 语句允许我们将程序的控制权转移到指定的 label . goto 语句的语法 goto label; ... .. ... ... .. ... label: statement; 标签 是一个标识符。当 goto 遇到语句,程序的控制跳转到label: 并开始执行代码。 示例:goto 语句 // Program to calculate the sum and average of positive numbers // I
C switch 语句 在本教程中,您将通过示例学习在 C 编程中创建 switch 语句。 switch 语句允许我们在许多备选方案中执行一个代码块。 你可以用 if...else..if 做同样的事情 梯子。但是,switch 的语法 语句更容易读写。 switch...case的语法 switch (expression) { case constant1: // statements break; case constant2: // statements break; . . .
C 中断并继续 我们在之前的教程中了解了循环。在本教程中,我们将通过示例学习使用 break 和 continue 语句。 C 中断 break 语句在遇到时立即结束循环。它的语法是: break; break 语句几乎总是与 if...else 一起使用 循环内的语句。 break 语句是如何工作的? 示例1:break语句 // Program to calculate the sum of numbers (10 numbers max) // If the user enters a negative number, the loop terminates #inc
C while 和 do...while 循环 在本教程中,您将通过示例学习在 C 编程中创建 while 和 do...while 循环。 在编程中,循环用于重复一段代码,直到满足指定的条件。 C编程有三种循环。 for循环 while 循环 做...while循环 在上一篇教程中,我们了解了 for 环形。在本教程中,我们将学习 while 和 do..while 循环。 while 循环 while 的语法 循环是: while (testExpression) { // the body of the loop } while 循环是如何工作的? while
C 循环 在本教程中,您将通过示例学习在 C 编程中创建 for 循环。 在编程中,循环用于重复一段代码,直到满足指定的条件。 C编程有三种循环: for循环 while 循环 做...while循环 我们将了解for 在本教程中循环。在下一个教程中,我们将学习 while 和 do...while 循环。 for循环 for 的语法 循环是: for (initializationStatement; testExpression; updateStatement) { // statements inside the body of loop } for 循环是
C if...else 语句 在本教程中,您将通过示例了解 C 编程中的 if 语句(包括 if...else 和嵌套 if..else)。 视频:C if else 语句 C if 语句 if 的语法 C编程中的语句是: if (test expression) { // code } if 语句如何工作? if 语句计算括号 () 内的测试表达式 . 如果测试表达式的计算结果为真,则 if 正文中的语句 被执行。 如果测试表达式被评估为假,则 if 正文中的语句 不会被执行。 要详细了解测试表达式何时计算为真(非零值)和假 (0),请检查关系和逻辑运算符。
C语言