首页 > 其他分享 >##笔记day06-C语言基础:随机数、一维、二维数组、字符数组

##笔记day06-C语言基础:随机数、一维、二维数组、字符数组

时间:2024-07-22 19:25:04浏览次数:22  
标签:arr ## ++ 元素 day06 char int 数组

day07笔记

1)rand 生成随机数

1)rand()随机函数
头文件:
    #include <stdlib.h>
函数原型:
    int rand(void);
函数功能:
    生成大于等于0的随机整数
参数:
    void
返回值:
    生成的随机整数
    
2)srand 更新随机数种子(srand()函数用于给rand()函数设定种子)
头文件:
    #include <stdlib.h>
    #include <time.h>
    //使用 <time.h> 头文件中的 time() 函数即可得到当前的时间(精确到秒)
函数原型:
    void srand(unsigned int seed);
	//它需要一个 unsigned int 类型的参数。在实际开发中,我们可以用时间作为参数,只要每次播种的时间不同,那么生成的种子就不同,最终的随机数也就不同。
函数功能:
    播种随机数种子
参数:
    seed
返回值:
    void
eg:
	int main()
{
    strand(time(NUll));//生成随机数种子,并随系统时间进行更新time(NULL)
    int a = rand()%100;//rand生成随机数,并设置随机数的范围0~99
    printf("%d\n",a);
    return 0;
}

七、数组

存储大量同类型的数据

1.一维数组

1)数组的定义
   <存储类型><数据类型>数组名[数组元素个数]
    存储类型:auto register static extern
    数据类型:char short int long float double 自定义类型
    数组名:标识符,满足命名规则
    []:在定义数组时,[]中是数组大小
    元素个数:该数组中最大存储的元素个数
    int arr [10];//定义了能够存储10个整形数据的整型数组
	sizeof(arr);//sizeof求数组的空间大小 40字节
2)数组的初始化
    1.完全初始化
    int arr[5] = {1,2,3,4,5};
    2.非完全初始化
        //非完全初始化,未初始化的元素值为0
    int arr[5] = {1,2,3};//按照顺序从第一个元素开始赋值
	int arr[5] = {[1] = 2,[3] = 4};//对第2个和第4个元素赋值
    int arr[5] = {0};
	int arr[] = {1,2,3};
3)数组元素的访问
    数组名[下标]:
	下标:0 ~ 最大元素个数-1
        int arr[10];
		//访问数组中的最后一个元素,arr[9]
	eg:打印数组的元素(循环)
        int arr[5]={1,2,3,4,5};
		int len = sizeof(arr)/sizeof(arr[0]);//求数组元素个数
        int i = 0;
        while(i<len){
        printf("%d\n",arr[i]);
        i++;}
4)可变数组
eg1:键盘上输入数组存储的元素个数
    int main(int argc, char *argv[])
{ 
    int n = 0;
    scanf("%d",&n);
    int arr[n];
    for(int i = 0; i < n; i++){
        arr[i] = i + 1;
    }
    for(int i = 0; i< n; i++){
        printf("%d ",arr[i]);
    }
    return 0;
} 
eg2:从键盘上输入和打印数组元素
    int main(int argc, char *argv[])
{ 
    int n;
    int arr[n];

    scanf("%d",&n);

    for(int i = 0; i < n; i++){
        scanf("%d",&arr[i]);   
    }
    for(int i = 0; i< n; i++){
        printf("%d ",arr[i]);
    }
    return 0;
}
eg3:求数组元素最大值以及下标
int main(int argc, char *argv[])
{ 
    int n;
    int arr[n];
    int max = 0;
    int index;

    scanf("%d",&n);

    for(int i = 0; i < n; i++){
        scanf("%d",&arr[i]);
    }
    for(int i = 0; i < n; i++){
        if(max < arr[i]){
            max = arr[i];
            index = i;
        }
    }
    printf("最大值为:%d,下标为:%d\n",max,index);

    return 0;
} 

2.二维数组


3.字符数组

char str[6] = {'h','e','l','l','o'};
char str[6] = {"hello"};
char str[6] = "hello";
eg:
int main(int argc, char *argv[])
{ 
    char str[5] = "hello";
    char str1[5] = "world";
    char str2[6] = "hello";

    printf("str = %s\n",str);

    return 0;
} 
结果:helloworldhello
     str数组没有预留'\0'的空间

标签:arr,##,++,元素,day06,char,int,数组
From: https://blog.csdn.net/2201_75349894/article/details/140617631

相关文章

  • 使用Ollama部署非官方仓库模型(Windows)
    一、从GitHub拉去llama.cpp项目gitclonehttps://github.com/ggerganov/llama.cpp下载完成后在当前目录的路径输入cmd,进入命令行二、安装python执行的相关依赖执行pipinstall-rrequirements.txt三、下载模型文件依赖安装成功后开始转换模型这里以魔塔上的C......
  • 哔哩哔哩_B站_Bilibili视频弹幕爬取与数据分析python
    ​B站弹幕爬取与数据分析一、项目背景在互联网时代,用户生成内容(UGC)成为了研究社交行为和文化趋势的重要数据来源。B站(哔哩哔哩)作为一个主要的弹幕视频分享平台,聚集了大量的用户评论和互动数据。弹幕作为一种实时的用户反馈形式,具有即时性和高互动性的特点,为数据分析提供了丰富......
  • 力扣LCR 039. 柱状图中最大的矩形
    思路用到了单调栈。由于最大矩形它的高一定是height数组中的其中一个值,那么我们就可以遍历数组height的值再乘上它的宽的最大值WidthMax(宽的最大值后面会讲),然后取最大值就是答案,也就是ans=max(ans,WidthMax*height[x])。那么如何求高为height[x]的宽的最大值WidthMax呢?解题过程......
  • 2024 ICPC ShaanXi Provincial Contest 换座位 sol
    \(\text{Link}\)自然地想到\(i\)向\(a_i\)连边。随便造一组强一点的数据:103121010892082图大概长这样容易发现每个\(i\)有且仅有\(1\)条出边。发现图中\(1,2,3\)这\(3\)个点组成了一个环。在这个环上,每个人都能做到自己心仪的位置上,所以这个环对......
  • Numercial result of irRMILrp-CGP
    ......
  • trie字典树
    由于笔者不常使用字典树,且整理不够全面,本文只做启发。trie字典树,把多个元素的前缀合并起来,用来完成单个元素和集合的匹配。构造:voidinsert(trar*str){intp=0,len=strlen(str+1);for(inti=1;i<=len;++i){intx=getnum(str[i]);......
  • 目的
    教育的目的是培养一个人独立思考和独立行动的能力。生活的目的是美妙的人生关键在于你迷上什么不知出于什么原因我开始变得难以专注地去做任何事情总想着去做其他事情总会想一些无关紧要的事貌似就连打游戏都无法专注期中失去了许多热情也许是还没找到让我迷上的东西美......
  • smtps 测试
    说明:通常,SMTP服务器和客户端之间的SMTP流量是未加密的。这会产生隐私问题,因为SMTP流量通常会通过服务器和客户端不信任的路由器,从而导致第三方可能更改服务器和客户端之间的通信。此外,两个SMTP系统通常不会相互验证。更安全的SMTP服务器可能只允许来自其他已知SMTP系......
  • NOI2024 翻盘记
    前排提示:这里的“翻盘”指的不是Day1寄了Day2翻盘(虽然也有一点?),而是Day2单场比赛的翻盘。2024.7.12(UNR笔试)没看到与题库相比改了答案,喜提\(99\),正赛可不能这么粗心!2024.7.13(UNRDay1)唐完了。上来A结论假了,浪费了一个小时。B式子推错了,改对后以为单次复杂度是\(O(......
  • 我的收藏周刊121
    文章分享Npcapinternalsnpcap,Wireshark在windows下依赖的抓包库实现,其内部抓包实现原理,与unix/linux下的libpcap有所不同,注意这里只是原理介绍,不涉及具体代码,而且代码看起来也没有开源。npcap是winpcap的继承者,winpcap支持到Windows10之前,Windows10及之后的Windows版本只......