C/ 数组

1.对if continue与if break的解释:

#include<stdio.h>
int main(void)
{
    int i;
    for(i=0; i<10; i++)
    {
        if(i%2==1) continue;
        printf("%2d",i);
	
    }
}

  if continue 结束的是本次循环,当i为奇数执行continue语句,不执行后面语句,比如i=1时,执行continue语句,不执行printf语句,然后跳转到i++,最终的输出结果为 0 2 4 6 8。

#include<stdio.h>
int main(void)
{
    int i;
    for(i=0; i<10; i++)
    {
        if(i%2==1) break;
        printf("%2d",i);
	
    }
}

  而if break 语句结束的是整个循环,执行i=1满足If语句,然后执行break语句,跳出整个for循环,输出结果为 0。

2.scanf输入字符串与字符串初始化的区别

#include<stdio.h>
int main(void)
{
	char a[10];
	char b[10]="HELLO YOU";
	scanf("%s",a);
	printf("a[10]=%s\n",a);
	printf("b[10]=%s",b);
	return 0;
	
}

scanf输入字符串时,遇到空格或者回车会自动结束输入,但对于数组的初始化时,空格不会产生影响,另外此时字符串的长度为9字节(包含中间空格),占用空间10字节(结尾处有‘\0’,字符串的结束标志)。此外结束符阔以用a[5]=0;或者是a[5]='\0';进行定义。

3.将一个数组放入新数组的操作。将字符串数组中‘0’到‘9’的字符放入到新数组ch2[i]里面。

....
i=0;
for(k=0;ch1[k]!='\0';k++)
{
  if(ch1[k]>='0'&&ch1[k]<='9')
    {
       ch2[i]=ch1[k];
       i++;
    }
}
ch2[i]='\0';

4.对于字符串数组加结束符'\0',是为了下面进行数组的遍历以及操作,比如:ch[k]='\0'; 是为了在用像这个for(k=0;ch[k]!='\0';k++)类似的操作,相当于一个判断结束的作用。

5.静态数组的说明。

    一维字符数组,前五个元素赋初值,其余元素为0,这三种情况等同,整数0代表字符'\0',(但是与'0'不同,字符'0')。

static char s[6]={'H','A','P','P','Y'};
static char s[6]={'H','A','P','P','Y',0};
static char s[6]={'H','A','P','P','Y','\0'};

//与这个不同
static char s[6]={'H','A','P','P','Y','0'};

  对于字符串数组,结束符为‘\0’。(一维字符数组不需要定义结束符,字符串数组需要定义)

static char s[6]={"HAPPY"};
static char s[6]="HAPPY";

  • 12
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值