一、第一一维数组
定义一维数组的一般形式为:
类型符 数组名[常量表达式]
例:
#inculde<stdio.h>
int main()
{
int a[10]; //定义一个有是个元素的数组
int i;
for(i=0;i<=9;i++) //用for循环对该数组里的十个元素进行赋值
scanf("%d",&a[i]);
for(i-0;i<=9;i++)
printf("%d ",a[i]); //最后按顺序输出该数组的是个元素
return 0;
}
二、定义二维数组
二维数组定义的一般形式为:
类型说明符 数组名[常量表达式] [常量表达式];
例如:
float a[3][4];其中表示该二维数组是由三行四列的矩阵构成
a[0]--------------------------a[0][0] a[0][1] a[0][2] a[0][3]
a[1]--------------------------a[1][0] a[1][1] a[1][2] a[1][3]
a[2]--------------------------a[2][0] a[2][1] a[2][2] a[2][3]
对二维数组的引用
#include<stdio.h>
int main()
{
int a[2][3]; //定义一个2*3的二维数组
int i,j;
for(i=0;i<=1;i++) //控制行的输出
for(j=0;j<=2;j++) //控制列的输出
scanf("%d",a[i][j]);
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
printf(%d ",a[i][j]);
return 0;
}
三、字符数组
1、用char 函数来定义字符数组
2、%s,%c的区别:
%s是输出一串字符串。例:
char c[]={"i am happy"};
printf("%s\n",c); c为字符数组的首地址
%c:
char c[]="I am happy";
for(int i=0;i<=10;i++)
printf("%c",c[i]);
其中字符串的结束标志位’\0’。
四、使用字符串处理函数
1、gets函数
该函数表示从键盘上接受一串输出的字符串
2、puts函数
该函数与printf函数相差不大,都是输出函数
3、strcat函数
该函数作用是把两个字符数组中的字符串连接在一起,例:
char str1[30]="people's republic of";
char str2[]="china ";
printf("%s",strcat(str1,str2)); \\或puts(strcat(str1,sstr2));
输出结果为people’s republic of china
其主要过程为将str2[]数组放进str1数组里面,因此,str1[]必须足够大,以便容纳str2数组里面的元素。
4、strcpy和strncpy函数-------字符串复制函数。
其作用为:
讲字符串2复制到字符数组1中去,例;
char str1[10],str2[]="china";
strcpy(str1,str2);
其结果为:
china
说明:字符数组1必须定义的足够大,以便容纳被复制的字符串2.字符数组1的长度不应小于字符串2的长度;
字符数组1必须写成数组名形式,字符串2可以是字符数组名,也可以是一个字符串常量。
5、strcmp字符比较函数.
作用:将字符串1和字符串2进行比较。
例:
strcmp(str1,str2);
strcmp("china","korea");
strcmp("str1,"beijing"");
比较规则:将两个字符串从左自右逐个字符相比(把ascll大小比较),知道出现不同的字符或遇到’\0’为止。
如全部字符相同,则认为两个字符串相等。
如果字符串1与字符串2相同,则函数值为0;
如果字符串1>字符串2,则函数值为一个正整数;
如果字符串1<字符串2,则函数值为一个负整数;
6、strlen测字符串长度的函数
其函数的值为字符串中的实际长度(不包括’\0’在内),例:
char str[10]="china";
printf("%d",strlen(str));
输出结果为5
例题:输入一行字符,统计其中有多少个单词,单词之间用空格分隔开
#include<stdio.h>
int main()
{
char string[81];
int i,num=0,word=0;
char c;
gets(string);
for(i=0;(c=string[i])!='\0';i++)
if(c==' ')
word=0;
else if(word==0)
{
word=1;
num++;
}
printf("there are %d words in this line .\n",num);
return 0;
}
`