当前位置: 首页 > news >正文

免费网站app生成软件济南今天发生的重大新闻

免费网站app生成软件,济南今天发生的重大新闻,微信存储wordpress,中国建筑公司网站大全1、概述 数组是在内存中连续的相同类型的变量空间数组属于构造数据类型 //数组定义 //数据类型 数组名[元素个数]{值1#xff0c;值2#xff0c;值3#xff0c;……}; int arr[10]{9,8,7,6,5,4,3,2,1,0};//元素访问 //数组名[下标] //数组下标从0开始 for(int i0;i) {prin…1、概述 数组是在内存中连续的相同类型的变量空间数组属于构造数据类型 //数组定义 //数据类型 数组名[元素个数]{值1值2值3……}; int arr[10]{9,8,7,6,5,4,3,2,1,0};//元素访问 //数组名[下标] //数组下标从0开始 for(int i0;i) {printf(%d\n,arr[i]); }//数组在内存中的存储方式和大小 for(int i0;i10;i) {printf(%p\n,arr[i]); }printf(%p\n,arr);printf(数组在内存中占的大小%d\n,sizeof(arr)); printf(数组元素在内存中占的大小%d\n,sizeof(arr[0])); printf(数组元素个数%d\n,sizeof(arr)/sizeof(arr[0]));数组在内存中是连续存储的地址连续数组名是一个指向数组首地址的地址常量数组在内存中占的大小数组类型*元素个数 2、数组的定义和使用 # 数组定义的方式 int arr1[10]{9,8,7,6,5,4,3,2,1,0}; int arr2[]{9,8,7,6,5,4,3,2,1,0}; //自动得到数组长度为10 int arr3[10]{1,2,3}; // 前三个分别为1 2 3 其余为0 int arr4[10]{0}; //所有元素都为0 int arr5[10]{1}; //第一个为1其余为0int arr6[10]; //定义了没有赋值内部的数据不确定一般会乱码 arr6[0]1; //第一个为1其余依然乱码int arr[]; //在这种写法不可以//这种写法不可以数组定义的时候数组长度必须是常量或者常量表达式 //数组必须预先知道大小 //动态数组 开辟堆空间 int i10; int arr[i];//从键盘获取数组元素值 int arr7[10]; for(int i0;i10;i){scanf(%d,arr7[i]); } 数组下标越界可能会报错但是越界后访问到的内容不确定。下标越界编译器不会报错 3、数组逆置 int arr[10]{1,2,3,4,5,6,7,8,9,10}; int i0; int jsizeof(arr)/sizeof(arr[0]); while(ij) {//通过临时变量交换数据int temparr[i];arr[i]arr[j];arr[j]temp;i;j--; } 4、冒泡排序 //内层比较次数为元素个数-1-执行次数 //外层执行次数为元素个数-1 int arr[]{9,1,5,7,2,10,8,4,6,3}; for(int i0;i10-1;i) {for(int j0;i10-1-i;j){if(arr[j]arr[j1]){//通过大于或者小于号控制升序或者降序int temparr[j];arr[j]arr[j1];arr[j1]temp;}} }5、二维数组 5.1、二维数组的定义和使用 // 一维数组数据类型 数组名[元素个数]{值1值2……} // 二维数组数据类型 数组名[行数][列数]{{值1值2……},{值1值2……},{值1值2……},……} int arr[2][3]{{1,2,3},{4,5,6}};arr[1][2]20; for(int i0;i2;i) {for(int j0;j3;j){printf(%d ,arr[i][j]);}printf(\n); }printf(二维数组的大小%d\n,sizeof(arr)); printf(二维数组一行的大小%d\n,sizeof(arr[0])); printf(二维数组的元素大小%d\n,sizeof(arr[0][0]));printf(二维数组的行数%d\n,sizeof(arr)/sizeof(arr[0])); printf(二维数组的列数%d\n,sizeof(arr[0])/sizeof(arr[0][0]));//二维数组首地址 //下面三个语句的输出结果一样 printf(%p\n,arr); printf(%p\n,arr[0]); printf(%p\n,arr[0][0]);//数组的第二行的首地址 printf(%p\n,arr[1]);//二维数组初始化 int arr[2][2]{1,2,3,4,5,6}; //等价于 int arr[2][3]{{1,2,3},{4,5,6}}; 但是一般不要这么写不方便维护//int arr[2][3] int arr[][3]{1,2,3,4,5,6}; //int arr[3][3] int arr[][3]{1,2,3,4,5,6,7}; //二位数组初始化的时候列数不能省略只能省略行 5.2、二维数组的应用 //定义一个二位数组存储五名学生三门成绩arr[5][3] //求出每名学生的总成绩平均成绩 //求出每门课的总成绩平均成绩 int arr[5][3];//输入成绩 for(int i0;i5;i) {for(int j0;j3;j){scanf(%d,arr[i][j]);} } //输出成绩 for(int i0;i5;i) {for(int j0;j3;j){printf(%d,arr[i][j]);} }//计算每名学生的总成绩和平均成绩 for(int i0;i5;i) {int sum0;for(int j0;j3;j){sumarr[i][j];}int averagesum/3; }//计算每门课的总成绩和平均成绩 for(int i0;i3;i) {int sum0;for(int j0;j5;j){sumarr[i][j];}int averagesum/5; }6、多维数组 6.1、多维数组的定义 // 一维数组数据类型 数组名[元素个数]{值1值2……} // 二维数组数据类型 数组名[行数][列数]{{值1值2……},{值1值2……},{值1值2……},……} //多维数组声明数组类型 数组名[n1][n2]……[nn]; int arr[2][3][4]{{{1,2,3,4},{2,3,4,5},{3,4,5,6}},{{4,5,6,7},{5,6,7,8},{6,7,8,9}}}; for(int i0;i2;i) {for(int j0;j3;j){for(int k0;k4;k){printf(%d ,arr[i][j][k]);}printf(\n);}printf(\n); }//三维数组的大小 printf(三维数组的大小%d\n,sizeof(arr)); printf(三维数组一层的大小%d\n,sizeof(arr[0])); printf(三维数组一行的大小%d\n,sizeof(arr[0][0])); printf(三维数组元素的大小%d\n,sizeof(arr[0][0][0]));//三维数组的层数 printf(三维数组的层数%d\n,sizeof(arr)/sizeof(arr[0])); printf(三维数组的行数%d\n,sizeof(arr[0])/sizeof(arr[0][0])); printf(三维数组的列数%d\n,sizeof(arr[0][0])/sizeof(arr[0][0][0]));//三维数组定义的时候层数可以省略 //高维数组定义的候第一个维度可以省略 int arr[][3][4]{0}//四维数组 int arr[2][3][4][5]{1,2,3}; //元素个数2*3*4*57、字符数组和字符串 7.1、字符数组与字符串的区别 //定义字符数组 char arr[6]{h,e,l,l,o,0}; //此时不是字符串只是字符数组 char arr2[5]{h,e,l,l,o}; //字符 char chh; //字符串 字符串结束标志位 \0 char *strhello; char arr1[]{h,e,l,l,o,\0}; //此时就是字符串了数字0等同于 \0,但是不等同于 0 printf(%s,arr1); printf(%s,arr2); //不会报错但是输出会乱码printf(%d\n,sizeof(arr));//可以通过字符的ASCII码进行字符数组的初始化但是下面的初始化末尾没有\0因此输出完前7个字符之后后面会乱码直到遇到内存中的\0为止 char ch3[]{110,111,112,101,123,98,99}; printf(%s,ch3);char ch4[]{hello}; //也可以不要大括号也可以 7.2、字符数组存储字符串 //定义字符数组存储字符串 char ch[10];//输入helloworld 会报错 //输入helloworl 会正常输入输出 //输入hellowo 会正常输入输出 //输入hello wor会输出hello scanf(%s,ch); //在输入字符串的时候长度超过9个会报错printf(%s,ch);拼接两个字符串 char ch1[]hello; char ch2world; char ch3[30];//字符串拼接 int i0; int j0; while(ch1[i]!\0) {ch3[i]ch1[i];i; } while(ch2[j]!\0) {ch3[ij]ch2[j];j; } ch3[ij]\0;printf(%s,ch3);7.3、字符串输入输出 char ch[10];//可以在输入的时候对字符串长度进行限定这里输入超过9个字符就不会报错但是实际输入只有九个字符输出也只有9个字符 scanf(%9s,ch); printf(%s,ch); 1gets() 函数从标准输入读入字符并保存到指定的内存空间直到出现换行符或读到文件结尾为止 char *gets(char *s); 参数s字符串首地址返回值成功读入的字符串失败NULLgets(str) 和 scanf(“%s”,str) 的区别 gets(str) 允许输入的字符串含有空格scanf(“%s”,str) 不允许含有空格 # include stdio.h char ch[100]; char ch2[100];//通过键盘获得一个字符串 //gets() 接收字符串可以带空格 //scanf 可以通过正则表达式来接收空格 scanf(%[^\n],ch); gets(ch); printf(%s,ch);注由于 scanf() 和 gets() 无法知道字符串的大小必须遇到换行符或者读到文件结尾为止才接收输入因此容易导致数组越界缓冲区溢出的情况。 2fgets() 函数从 stream 指定的文件内读入字符保存到所指定的内存空间直到出现换行字符、读到文件末尾或是读了 size-1 个字符为止最后会自动加上 ‘\0’ 字符作为结束标志。 # includestdio.h char *fgets(char *s, int size,FILE *stream);参数 s字符串size指定最大读取字符串的长度size-1stream文件指针如果读取键盘输入的字符串固定写作 stdin 返回值 成功成功读取的字符串读到文件尾或者出错NULL fgets() 在读取一个用户通过键盘输入的字符串的时候同事把用户输入的回车也作为字符串的一部分。通过 gets() 和 scanf() 输入一个字符串的时候不包含结尾的 ‘\n’但通过 fgets() 结尾多了 ‘\n’。fgets() 函数是安全的不存在缓冲区溢出的问题fgets() 函数可以接收空格和换行fgets() 函数获取字符串长度短于元素个数会有 ‘\n’大于则没有 char ch[10];fgets(ch,sieof(ch),stdin); printf(%s,ch);3puts () 函数从标准输出设备输出字符串在输出完成后自动输出一个 ‘\n’ #includesrdio.h int puts(const char *s);参数s字符串首地址返回值成功非负数失败-1 char ch[]hello world;//puts() 自带换行 puts(ch);puts(hello\0 world); //输出结果为hello输出的时候遇到 \0 停止 4fputs() 函数将 str 所指定的字符串写入到 stream 指定的文件中字符串结束符 ‘\0’ 不写入文件 #includestdio.h int fputs(const char *str,FILE *stream);参数 str字符串stream文件指针如果把字符串输出到屏幕固定写为 stdout 返回值成功0失败-1fputs() 是 puts() 的文件操作版本但是 fputs() 不会自动在末尾输出一个 ‘\n’ char ch[]hello world; fputs(ch,stdout);7.4、字符串的长度 1strlen() 函数计算指定字符串 s 的长度不包含字符串结束符 ‘\0’ #include string.h size_t strlen(const char *s);参数s字符串首地址返回值字符串 s 的长度size_t 为 unsigned int 类型 //计算字符串有效长度 char ch[100]hello world; printf(数组大小%d,sizeof(ch)); //100 printf(字符串大小%d,strlen(ch)); //11char ch1[]hello world; printf(数组大小%d,sizeof(ch1)); //12 printf(字符串大小%d,strlen(ch1)); //11char ch1[]hello world; int len0;while(ch[len]!\0) {len; } printf(字符串的长度%dlen);
http://www.pierceye.com/news/651660/

相关文章:

  • 定制网站开发一般多少钱郑州哪家公司做网站好
  • jsp做的网站效果给你一个网站你怎么做的吗
  • 怎样做网站海报wordpress最近怎么又是5.0更新
  • 淡水网站建设哪家便宜设计网页分析
  • 长沙多迪php网站开发培训学校小说榜单首页百度搜索风云榜
  • 门户网站建设计入什么科目网站备案 时间更新
  • 企业建网站租用服务器好还是买一个好wordpress 预订插件
  • 电气建设网站下载的asp网站怎么打开
  • 南阳网站建设icp备手机应用商店免费下载
  • 网站开发测量像素工具网站模板包含哪些内容
  • 南昌网站排名优化费用湖北公众号定制开发
  • 个人主页自助建站凡科网干嘛的
  • 网站后台上传图片不显示品牌营销咨询公司
  • 卖房网站母亲节做什麽活动从传播的角度
  • 永久免费的cad软件seo咨询
  • 网站邮件功能设计理论网站排名软件包年
  • wordpress语言文件编辑专业的企业网站优化公司
  • 正定网站建设制作公司wordpress去掉模板登录
  • 定制开发一个网站多少钱网站开发项目的心得体会
  • 网站被做跳转怎么办个人网站开发软件
  • 湛江网站制作费用南昌建站系统外包
  • 杭州市住房和城乡建设厅网站网页设计个人网站作业
  • 钦州建站哪家好杭州网站建站平台
  • 程序员做笔记的网站在线简历制作系统
  • 有一个网站自己做链接获取朋友位置wordpress504
  • 设计感 网站wordpress企业内网主题
  • 金塔精神文明建设网站上线了小程序制作平台
  • 东莞阳光网站建设成效网站内容营销
  • 阿里云做网站吗深圳香蜜湖街道
  • 营销型网站名词解释关键词有几种类型