首页 > 其他分享 >《初学C语言第8天》

《初学C语言第8天》

时间:2023-11-27 20:32:11浏览次数:33  
标签:arr return int C语言 初学 printf 阶乘 include

////代码调试——调用堆栈

//#include<stdio.h.>

//void test2()

//{

// printf("hehe");

//}

//void test1()

//{

// test2();

//}

//void test()

//{

// test1();

//}

//int main()

//{

// test();

// return 0;

//}

////研究程序死循环的原因

//#include <stdio.h>

//#include <stdlib.h>

//int main()

//{

//    int i = 0;

//    int arr[10] = { 0 };

//    for (i = 0; i <= 12; i++)

//    {

//        arr[i] = 0;

//        printf("hehe\n");//下标+1=数组元素位数——>当i=10,数组越界指向了11的位置

//    }

//    system("pause");

//    return 0;//死循环原因:$i=$arr[12].当arr[12]执行后,i的值又变为0,从而陷入死循环

//}

//——————————————————————————————例题

// ////计算1!+2!+......+n!——(循环方法)

//#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>

//int  main()

//{

// int n = 0;

// int sum = 0;//最后结果

// int i = 1;

// int ret = 1;//保存n的阶乘

// scanf("%d", &n);

// for (i = 1; i <= n; i++)

// {

//  int a = 0;

//  ret = 1;

//  for (a = 1; a <= i; a++)

//  {

//   ret *= a;

//  }

//  sum += ret;

// }

// printf("%d\n", sum);

// return 0;

//}

////写⼀个代码求n的阶乘(循环方法)

//#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>

//int main()

//{

// int n = 0;

// scanf("%d", &n);

// int i = 1;

// int ret = 1;

// for(i=1; i<=n; i++)

// {

//  ret *= i;

// }

// printf("%d\n", ret);

// return 0;

//}

////计算n的阶乘(阶乘函数)

//#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>

//int factorial(int n)  

//{

// if (n == 0)  

// {

//  return 1;

// }

// else  

// {

//  return n * factorial(n - 1);

// }

//}

//int main()  

//{

// int n;

// printf("输入一个数字: ");

// scanf("%d", &n);

// printf("%d! = %d", n, factorial(n));

// return 0;

//}

////计算1!+2!+......+n!——(factorial求阶乘函数)

//#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>

//long long factorial(int n)  

//{

//    if (n == 0 || n == 1)  

//    {

//        return 1;

//    }

//    else  

//    {

//        return n * factorial(n - 1);

//    }

//}

//int main()  

//{

//    int n;

//    long long sum = 0;

//    printf("Enter a number: ");

//    scanf("%d", &n);

//    for (int i = 1; i <= n; i++)  

//    {

//        sum += factorial(i);  // 计算1的阶乘 + 2的阶乘 + 3的阶乘 + ...... + n的阶乘

//    }

//    printf("The sum of factorials from 1 to %d is: %lld", n, sum);

//        return 0;

//}

//

// //将数组内元素由小到大排序

//#include <stdio.h>

//// 冒泡排序函数

//void bubbleSort(int arr[], int n)  

//{

//    for (int i = 0; i < n - 1; i++)  

//    {

//        for (int j = 0; j < n - i - 1; j++)  

//        {

//            if (arr[j] > arr[j + 1])  

//            {

//                // 交换相邻两个元素

//                int temp = arr[j];

//                arr[j] = arr[j + 1];

//                arr[j + 1] = temp;

//            }

//        }

//    }

//}

//int main()  

//{

//    int arr[] = { 5, 2, 8, 1, 6 };  // 待排序的数组

//    int n = sizeof(arr) / sizeof(arr[0]);  // 数组的长度

//    printf("Before sorting: ");

//    for (int i = 0; i < n; i++)  

//    {

//        printf("%d ", arr[i]);

//    }

//    bubbleSort(arr, n);  // 调用冒泡排序函数进行排序

//    printf("After sorting : ");

//        for (int i = 0; i < n; i++)  

//        {

//            printf("%d ", arr[i]);

//        }

//

//    return 0;

//}

//#include<stdio.h>

//int main()

//{

// int a[5] = {1,2,3,4};

// int p, i, x=0;

// for (p = 0; p <= 4;)

// {

//  if (a[p] < x)

//  {

//   p++;

//  }

//  else

//  {

//   break;

//  }

// }

// for (i = 4; i > p; i--)

// {

//  a[i] = a[i - 1];

// }

// a[p] = x;

// for (i = 0; i <= 4; i++)

// {

//  printf("%3d\n",a[i]);

// }

// return 0;

//}

标签:arr,return,int,C语言,初学,printf,阶乘,include
From: https://blog.51cto.com/u_16292665/8588146

相关文章

  • c语言中向函数传递二维矩阵的方法
    在C语言中,向函数传递二维数组有几种方式,这主要取决于二维数组的大小是否已知。下面是几种常见的方式:  1)如果二维数组的大小已知,那么你可以在函数参数中直接指定数组的大小。例如: voidfunc(intarr[10][10]){...} 在这个例子中,func函数接受一个10x10的二维数组作为参数......
  • 选择法排序——c语言
    #include<stdio.h>intmain(){inti,min,z,j,temp,k,n=11;intbe[]={1,4,6,9,13,16,19,28,40,100,0};scanf("%d",&z);be[10]=z;for(i=0;i<n-1;i++){min=i;for(j=i+1;j<n;j++){if(be[min]......
  • c语言
    /**@Author:[email protected]*@Date:2023-11-1013:51:34*@LastEditors:[email protected]*@LastEditTime:2023-11-2709:19:51*@FilePath:\c-learn\zhizhen.c*@Description:这是默认设置,请设置`customMade`,打开k......
  • C语言调用C++类成员函数讲解和实例
    原文:https://blog.csdn.net/LxXlc468hW35lZn5/article/details/1257010071、问题成因C语言与C++调用问题原因主要在于C编译器和C++编译器的不同。C是过程式语言,C编译器编译后,函数在符号库中就是函数名,没有其他任何附加信息。而C++是对象式语言,支持函数重载,C++编译器编译后,在符号......
  • C语言笔记7
    数组是一组有序的、类型相同的数据的集合,这些数据被称为数据的元素。一维数组的定义类型说明符数组名【正整型常量表达式】说明:类型说明符:数组的类型。数组名同变量名命名规则相同。常量表达式指明数组中元素个数,必须大于0.可以是数值常量、符号常量和字符常量。例如:floa......
  • C语言模拟进程状态
    精选状态图如下给出C语言执行状态图根据状态图,给出C语言代码解释这段代码定义了一个枚举类型ProcessState,包含了5个枚举值:NEW、READY、RUNNING、BLOCKED和TERMINATED。然后定义了一个ProcessState类型的变量process,并将其初始化为NEW。接着通过printf语句输出当前进程状态......
  • C语言【文件操作】
    C语言【文件操作】1、输入/输出流的定义。​ C语言中,文件输入/输出以流的方式进行。​ 读还是写,输入还是输出,是站在内存(程序)的角度来看的。从程序(内存)向数据源(如文件、网络等)传递数据的过程叫做读数据,读数据使用的路径叫做输入流,一般读数据的过程是一个解码的过程;从数据源(如文......
  • C语言模拟进程状态
    首先定义进程状态的枚举类型为ProcessStatetypedefenum{NEW,READY,RUNNING,BLOCKED,TERMINATED}ProcessState;而后据图中进程运行代码intmain(){ProcessStateprocess=NEW;printf("Processcreated.State:NEW\n");process=REA......
  • 《初学C语言第七天》
    ////写一个代码打印1-100之间所有3的倍数的数字//#include<stdio.h>//intmain()//{// inti=1;// for(i=1;i>=1&&i<=100;i++)// {// if(i%3==0)// {//  printf("%d\n",i);// }// }// return0;//}//写代码将三个整数数按从大到小输出//......
  • 了解 ESP32 FreeRTOS:初学者指南
    原文:https://www.cnblogs.com/intomcu/p/17297020.html了解ESP32FreeRTOS:初学者指南ESP32FreeRTOS是什么?如何使用FreeRTOS?哪些常用的函数?xTaskCreate()vTaskDelete()vTaskDelay()xTicksToDelay()xSemaphoreCreateBinary()xSemaphoreGive()xSemaphore:要释放的信......