找到 1356 篇文章 关于 C 语言

无需循环打印 1 到 100 的程序

George John
更新于 2019-07-30 22:30:25

612 次浏览

在这里,我们将学习如何编写一个 C 程序,无需任何循环即可打印 1 到 100 的数字。这个问题可以使用递归来解决。我们将创建一个递归调用的函数。我们知道递归函数基本上有两个部分:基本情况和递归调用以及其他操作。在这个函数中,基本情况是参数 n 大于 1。直到它达到 1,该函数将被递归调用。现在,最后它将打印 n 的值。因此,整个... 阅读更多

无需条件语句打印“偶数”或“奇数”的 C 程序

Ankith Reddy
更新于 2019-07-30 22:30:25

10K+ 次浏览

在本节中,我们将学习如何在不使用任何条件语句(例如 =、==)的情况下检查数字是奇数还是偶数。我们可以很容易地使用条件语句来检查奇数或偶数。我们可以将数字除以 2,然后检查余数是否为 0。如果为 0,则为偶数。否则,我们可以对数字和 1 执行 AND 运算。如果结果为 0,则为偶数,否则为奇数。这里不能使用条件语句。我们将看到两种不同的方法来检查奇数或偶数。方法... 阅读更多

MySQL 中是否存在与 C 或 C++ 一样的三元运算符?

Samual Sam
更新于 2019-07-30 22:30:25

57 次浏览

是的,让我们首先看看 C 或 C++ 语言中三元运算符的工作原理。X=(X > 10 && ( X-Y) < 0) ?: X:(X-Y);以下是 C 语言的演示代码。之后,我们将在 MySQL 中进行检查。C 代码如下所示:#include int main() {    int X;    int Y;    int result;    printf("Enter the value for X:");    scanf("%d", &X);    printf("Enter the value for Y:");    scanf("%d", &Y);    result=( X > 1 && (X-Y) < 0) ? X: (X-Y);    printf("The Result is=%d", result);    return 0; }C 的快照... 阅读更多

为什么 C/C++ 中数组索引从零开始?

Ankith Reddy
更新于 2020-06-26 14:18:25

6K+ 次浏览

数组 arr[i] 解释为 *(arr+i)。这里,arr 表示第一个数组元素或 0 索引元素的地址。因此 *(arr+i) 表示距数组第一个元素 i 个距离的元素。因此数组索引从 0 开始,因为最初 i 为 0,这意味着数组的第一个元素。一个在 C++ 中演示这一点的程序如下所示。示例 现场演示#include using namespace std; int main() {    int arr[] = {5,8,9,3,5};    int i;    for(i = 0; i <

为什么我们认为 C/C++ 中的 strncpy 不安全?

Ankith Reddy
更新于 2020-06-26 14:04:29

501 次浏览

函数 strncpy() 用于将指定数量的字符从源复制到目标。以下是 strncpy() 的语法char *strncpy( char *destination, char *source, size_t n);这里,destination 是指向目标数组的指针,源字符串将被复制到该数组中,source 是要复制的字符串,n 是要从源字符串复制的最大字符数。strncpy() 函数不安全,因为如果在源字符串的前 n 个字符中不存在 NULL 字符,则目标字符串将不会以 NULL 结尾。一个... 阅读更多

在 C/C++ 中访问数组越界

Ankith Reddy
更新于 2020-06-26 14:08:50

1K+ 次浏览

在 Java 等语言中,如果访问数组越界,可能会出现 java.lang.ArrayIndexOutOfBoundsException 等异常。但是 C 中没有这样的功能,如果访问数组越界,可能会出现未定义的行为。一个在 C 中演示这一点的程序如下所示。示例 现场演示#include int main() {    int arr[] = {1,2,3,4,5};    printf("The elements of array : ");    for(int i = 0; i <

如何在 C/C++ 中编写多行长字符串?

George John
更新于 2020-06-26 14:10:35

13K+ 次浏览

可以使用两个双引号(“ ”)在字符串中间的任何位置中断字符串,从而将长字符串写入多行。一个在 C 中演示这一点的程序如下所示。示例 现场演示#include int main() {    char *str = "This is the method "                "to write long strings "                "in multiple lines in C";    puts(str);    return 0; }输出上述程序的输出如下所示。This is the method to write long strings in multiple lines in ... 阅读更多

在 C 中不能用于创建数组的数据类型

Chandu yadav
更新于 2020-06-26 14:11:13

311 次浏览

可以使用所有数据类型(例如 int、char、float、double 等)创建数组。但是,无法使用 void 数据类型创建数组。如果这样做,将显示错误。一个演示这一点的程序如下所示。示例 现场演示#include #include int main() {    void arr1[4];    printf("A void array");    return 0; }输出上述程序返回以下错误。error: declaration of ‘arr1’ as array of voids void arr1[4];现在让我们理解上述程序。在上述程序中创建了一个 void 数据类型的数组 arr1。由于这是... 阅读更多

如何在 C 中将二维数组作为参数传递?

George John
更新于 2020-06-26 14:14:28

981 次浏览

二维数组可以很容易地作为参数传递给 C 中的函数。一个在全局指定数组的两个维度时演示这一点的程序如下所示。示例 现场演示#include const int R = 4; const int C = 3; void func(int a[R][C]) {    int i, j;    for (i = 0; i < R; i++)    for (j = 0; j < C; j++)    a[i][j] += 5; ; } int main() {    int a[R][C];    int i, j;    for (i = 0; i < R; i++)    for (j = 0; ... 阅读更多

如何在 C 中动态分配二维数组?

Chandu yadav
更新于 2019-07-30 22:30:23

16K+ 次浏览

可以使用单个指针在C语言中动态分配二维数组。这意味着使用`malloc`分配大小为`row*column*dataTypeSize`的内存块,并可以使用指针运算来访问矩阵元素。下面是一个演示程序。示例在线演示 #include #include int main() { int row = 2, col = 3; int *arr = (int *)malloc(row * col * sizeof(int)); int i, j; for (i = 0; i < row; i++) ... 阅读更多

广告