// 字符数组:用于存放字符变量的数组.字符数组也是一维数组,与普通字符定义方式相似,只是类型是char
// char 数组名[常量表达式1] = {值1,值2,....};
// char array[10]={'i', 'P', 'h', 'o', 'n', 'e'};
//
// for (int i=0; i<10; i++) {
// printf("array[%d]=%c\n",i,array[i]);
// }
//
// char array1[10]="iphone6p";
// for (int i=0; i<10; i++) {
// printf("aaray1[%d]=%c\n",i,array1[i]);
// }
// 有'\0'结束标识的字符数组也称为字符串;字符数组长度要比字符长度大一,用来存放'\0'标识
strlen() 计算字符串长度
// strcpy(<#char *#>, <#const char *#>) 字符串拷贝
// 1.字符串比较
// int strcmp(const char *s1, const char *s2);
// 比较两个字符串的大小(不忽略大小写),返回值很有学问:如果s1小于s2返回一个小于0的数,如果s1大于s2返回一个大于0的数,如果相等则返回0。返回值是两个字符串中第一个不相等的字符ascii码的差值
// 2. 查找字符串的函数strstr:
// char *strstr(const char *s1, const char *s2);
// 3.字符串复制
// 最常见的字符串复制函数是strcpy:
// char *strcpy(char *dst, const char *src);
//
// 4.字符串连接
// 字符串连接是把一个字符串的头连接到另一个字符串的结尾。
// char *strcat(char *s1, const char *s2);
//计算字符串长度
unsigned long length = strlen(str);
printf("length = %lu\n",length);
int count = sizeof(str) / sizeof(char);
printf("count = %d\n",count);
//字符串赋值strcpy
char newStr[]={'\0'};
strcpy(newStr *, str);
printf("newStr=%s\n",newStr);
//字符串拼接
strcat(str,str1);
printf("str1=%s\n",str1);
//字符串比较
//注意:字符串比较函数是根据对应下标的字符的ASCII码值作比较(减法),如果差值为零,说明两个字符相等,接着比较下一位ASCII码值,直到遇到'\0',如果差值不为零则返回该差值,表示两个字符是不同的。
字符串处理函数:http://blog.csdn.net/ruizeng88/article/details/6677736
例题:
//随机产生20个10~50的正整数存放到数组中,并求数组中的最大值、最小值、各元素之和和平均值。
int sum = 0,average=0,max=0,min=50,g=0;
int arr[20]={0};
for (int i = 0; i<20; i++) {
g = arr[i]=arc4random()%(50-10+1)+10;
if (min>g) {
min=g;
}
if (max<g) {
max=g;
}
printf("aar[%d]=%d\n",i,arr[i]);
sum+=arr[i];
average=sum/20;
}
printf("average = %d\n",average);
printf("max=%d,min=%d\n",max,min);
(2):
//给定某年某月某日,将其转换成这一年的第几天并输出。
// int yeah,month,day,i,sum=0;
// int run[12]= {31,29,31,30,31,30,31,31,30,31,30,31};
// int ping[12]={31,28,31,30,31,30,31,31,30,31,30,31};
// printf("请输入年月日");
// scanf("%d,%d,%d",&yeah,&month,&day);
// if ((yeah%400==0 || yeah%4==0) &&(yeah%100!=0))
// {
// for (i=0; i<month-1; i++)
// {
// sum+=run[i];
//
// }
// printf("%d\n",sum+day);
// }
//
//
// else
// {
// for (i=0; i<month-1; i++)
// {
// sum+=ping[i];
//
// }
// printf("%d\n",sum+day);
// }
// int year,month, day,sum=0;
// int ruendays[]={31,29,31,30,31,30,31,31,30,31,30,31};
// int days[]={31,28,31,30,31,30,31,31,30,31,30,31};
//
// printf("请输入年份\n");
// scanf("%d,%d,%d",&year,&month,&day);
//
// if ((year%4==0||year%400==0)&&(year%100!=0))
// {
// //闰年
// for (int i=0; i<month-1; i++)
// {
// sum +=ruendays[i];
// }
// printf("%d\n",sum+day);
// }
// else
// {
// for (int i=0; i<month-1; i++)
// {
// sum +=days[i];
// }
// printf("%d\n",sum+day);
//
// }
//结束