c语言sscanf函数的用法是什么
258
2022-11-25
一维数组 二维数组 字符数组 处理字符串的函数
一维数组 二维数组 字符数组 处理字符串的函数一维数组二维数组字符数组处理字符串的函数一、一维数组:类型符 数组名[常量表达式];数组名既可以表示数组的地址,也可以表示数组首元素的地址,两个在数值上是一样的,但是含义不一样。
int arry[10];这个数组里元素个数:int n=sizeof(arry)/sizeof(arry[0]);//元素个数=数组的总体字节大小/第一个元素的所占字节大小表示这是一个整型(int)数组,里面有10个整型元素,分别为a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]。("不存在a[10] ");
用一个for函数打印出10个元素所对应的的下表;eg:
#include
**注意:数组名只有在sizeof和&后才代表整个数组,其它都表示首元素的地址*****
int arr1[10] = {1,2,3};//10个元素,其余未定义为0;int arr2[] = {1,2,3,4};//四个元素int arr3[5] = {1,2,3,4,5};char arr4[3] = {'a',98, 'c'};char arr5[] = {'a','b','c'};char arr6[] = "abcdef";这些数组都是正确的二、二维数组:类型说明符 数组名[常量表达式1][常量表达式2](常量表达式1:有几行)(常量表达式2:每一行有几个元素)eg:i
int ewarry[3][4]={{1,2},{5,6,7},{}}注:未赋值的为0既:1 2 0 05 6 7 00 0 0 0正确的表达式:int arr[3][5] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };//系统自行填充0int arr[][5]={1,2,3,4,6,4,7,8,5};//常量表达式1可以不写,由系统自行填充0,常量表达式2不能少三、字符数组:定义:用来存放的字符数据的数组是字符数组用scanf时。scanf("%d",srry);不用&,arry为数组名有首地址eg:
char c[10]={'i','s','e','e','y','o','u'}注:\0既是字符串结束标志,系统自行填充\0四、处理字符串的函数:
putsputs(字符数组)作用:将一个字符串(以\0结束)输出到终端。2.getsgets(字符数组)作用:从终端输入一个字符串到字符数组,并且得到一个函数值。该函数值是字符串的起始地址。3.strcatstrcat(字符数组1,字符数组2)作用:将两个字符数组中的字符串连接起来,吧第二个字符串接到第一个字符串后面,结果放在字符数组1中,函数调用得到一个函数值——字符数组1的地址。char arry1[50]={"abcde "};char arry2[]={doushini"};printf("%d",strcat(arry1,arry2));输出:>abcd doushini4.strcpy和strncpystrcpy(字符数组1,字符数组2)作用:将字符串2复制到字符串1中(包含2中末尾的\0,但1后面任为原来字符元素)。加n表示将数组2中前面几个字符复制过来。char str1[10],str2[]="abcd";strcpy(str1,str2);5.strcmpstrcmp(字符串1,字符串2)作用:比较字符串1和字符串2.strcmp("str1,str2");strcmp("abcde","nishishei");strcmp(str1,"abcde");比较结果由函数值带回。(1)如果字符串相等,则函数值为0;(2)如果前面字符串>后面字符串,则函数值为一个正整数;(3)如果前面字符串<后面字符串,则函数值为一个负整数;
注:两字符串比较不能用:if(str1>str2) printf("yes");只能用:if(strcmp(str[10]="abcede";printf("%d",strlen(str));输出结果为:>5.也可以直接粗粮长度,如:strlen("abcde");7.strlwrstrlwr(字符串)作用:将字符串中大写字母换成小写字母。8.struprstrupr(字符串)作用:将字符串中小写字母换成大写字母。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~