首页 > 其他分享 >数组

数组

时间:2023-07-16 23:01:30浏览次数:45  
标签:10 int void 数组 printf main

数组

  • 一维数组的定义:

    类型说明符 数组名 [常量表达式];

    int [10]

注意: 定义数组的时候不能动态定义

int n;
scanf("%d", &n);
int a [n];
// c语言编译时就要储存一个数组的内存. 不运行后期添加数组内存

一些书写格式上的问题

// 遍历下标变量. 输出数组
for (i=0; i<10; i++){
 printf("%d", a[i]);
}
// 下面的写法是错误的. 不能直接输出
printf("%d", a);

一个倒序输出一个数组

#include <stdio.h>
void main(){
 int i, a[10];
 for (i=0; i<=9; i++){
     a[i] = i;
 }
 for (i=9; i>=0; i--){
     printf("%d ", a[i]);
 }
}
//  9 8 7 6 5 4 3 2 1 0
  • 一维数组的初始化

  1. 初始化一维数组: int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

    a[0] = 0, a[1] = 1......

  2. 可以只给一部分元素赋值:

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

  3. int a[10] = 0 表示全部元素都是0

  4. 数组动态赋值的方法:

void main(){
    int i, max, a[10];  // 必须先给数组创建含有长度的内存
    printf("input 10 numbers:\n");
    for (i=0; i<10; i++){
        scanf("%d", &a[i]);
    }
    max = a[0];
    for (i=1; i<10; i++){
        if (a[i]>max){
            max = a[i];
        }
    }
    printf("maxnum=%d\n", max);
}

例题1. Fibonacci数列公式. 即: 1. 2. 3. 5. 8....... an = an-1 + an-2

// 过程: 先定义一个20个元素的数组. 并将数组的第一. 第二个元素都初始化成1. 其他元素初始化为0. 通过公式求出其他各元素的值.

#include <stdio.h>
void main(){
 int i;
 int a[20] = {1, 1};
 for (i=2; i<20; i++){
     a[i] = a[i-2] + a[i-1];
 }
 // 控制格式化输出
 for (i=0; i<20; i++){
     if (i % 5 == 0){
         print("\n");
     }
     printf("%12d", a[i]);
 }
}

例题2: 用冒泡法(起泡法)对10个数排序(从小到大)

#include <stdio.h>

void main(){
 int a[10];
 int i, j, t;
 printf("Please input 10 munbers:\n");
 for (i=0; i<10; i++){
		scanf("%d", &a[i]);
 }
 printf("\n")
 // 控制两层循环
 // n个数要进行n-1次比较
 for (j=0; j<9; j++){  // n-1次
     // 在第j次要进行n-j次两两比较
     for (i=0; i<9-j; i++){  // n-j次
         if (a[i] > a[i+1]){
             // 将a[i]和a[i+1]调换
			   t = a[i];
             a[i] = a[i+1];
             a[i+1] = t;
         }
     }
 }
}

标签:10,int,void,数组,printf,main
From: https://www.cnblogs.com/huxiaofeng1029/p/17558783.html

相关文章

  • Java数组
    Java数组数组的定义数组是相同类型数据的有序集合。数组描述的相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。数组声明创建首先必须声明数组变量,才能在程序中使用数组。下面是声明数组......
  • 6929.数组的最大美丽值-355
    数组的最大美丽值给你一个下标从0开始的整数数组nums和一个非负整数k。在一步操作中,你可以执行下述指令:在范围 [0,nums.length-1]中选择一个此前没有选过的下标i。将nums[i]替换为范围[nums[i]-k,nums[i]+k]内的任一整数。数组的美丽值定义为数......
  • .net 实现数组拼接成sql语句IN
    一、简单记录一下.net实现字符串数组拼接成sql语句IN把0001|ceshi04|ceshi0F|ceshi0J变成‘0001’,‘ceshi04’,‘ceshi0F’格式List<string>joinCodeList=model.SJoinList.Split('|').ToList();stringcaseSql=joinCodeList.Aggregate("",(current,s)=>cu......
  • JavaScript:将对象数组映射到字典
    JavaScript:将对象数组映射到字典#javascript#打字稿#数据在JavaScript/TypeScript中将对象数组转换为字典的最简单方法:letdata=[{id:1,country:'Germany',population:83623528},{id:2,country:'Austria',population:8975552},{id:3,country......
  • Java性能优化-测试数组和链表在查询和添加删除时性能对比
    场景Java中使用JMH(JavaMicrobenchmarkHarness微基准测试框架)进行性能测试和优化:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/131723751上面在使用JMH时测试了Java中数组和链表在进行头部插入时的对比结果。下面分别对比在头部、中部、尾部分别进行查询和......
  • Java数组指针
    Java数组指针在Java中,数组是一种非常常见和重要的数据结构。数组允许我们在一个变量中存储多个相同类型的元素。但是,在使用数组时,有时候我们可能需要引用数组的指针,以便更方便地操作数组的元素。本文将介绍Java中的数组指针的概念,并提供相关的代码示例。什么是数组指针?在Java中,......
  • Java数组
    0x01认识数组1、什么是数组数组就是用来存储一批同种类型数据的容器。int[]arr={20,10,80,60,90};String[]names={"张三","李四","王二"};2、为什么要用数组假如用变量学生名字,然后完成随机点名功能,怎么实现?存在有什么问题?Stringname1="张誉";Stringnam......
  • 2023-07-15:给你一个 非递减 的正整数数组 nums 和整数 K, 判断该数组是否可以被分成一
    2023-07-15:给你一个非递减的正整数数组nums和整数K,判断该数组是否可以被分成一个或几个长度至少为K的不相交的递增子序列。输入:nums=[1,2,2,3,3,4,4],K=3。输出:true。答案2023-07-15:大体步骤如下:1.初始化计数变量cnt和最大计数变量maxCnt,初始值都为1。2.从索引......
  • 2023-07-15:给你一个 非递减 的正整数数组 nums 和整数 K, 判断该数组是否可以被分成一
    2023-07-15:给你一个非递减的正整数数组nums和整数K,判断该数组是否可以被分成一个或几个长度至少为K的不相交的递增子序列。输入:nums=[1,2,2,3,3,4,4],K=3。输出:true。答案2023-07-15:大体步骤如下:1.初始化计数变量cnt和最大计数变量maxCnt,初始值都为1。2......
  • Java学习day04: 方法和数组
    我在B站上大学......