初始C语言——字符串,转义字符,循环语句

字符串

由双引号引起来的一串字符就叫字符串,字符串也是通过下标来访问的,但是字符串的结束标志是\0,用代码来看。

int main()
{
    char arr1[] = "fiee";
    char arr2[] = {'f', 'i', 'e', 'e'};
    char arr3[] = {'f', 'i', 'e''e', '\0'};
    printf("%s\n", arr1);
    printf("%s\n", arr2);
    printf("%s\n", arr3);
    return 0;
}

输出结果如下
在这里插入图片描述
第一行是正常输出fiee的,因为创建的时候,是以\0结束的,所以这里也能正常输出。第二行是自定义输入的字符,没有输入\0,所以输出的时候要去检索\0,因为\0是字符串的结束标志,只有检索到\0,才会认为字符串结束了。所以这里就是一直检索,直到找到\0,所以就有了烫烫烫烫这种随机值。第三行的输出和第二行的区别就是手动添加了\0,所以在检索的之后就找到\0了,所以输出的就是fiee.

转义字符

在C语言当中,有很多时候不能实现自己想要实现的功能,尤其是\和字母在一起,这是因为这样的两个结合起来就是一个转义字符。在C语言当中有很多转义字符。如下。

在这里插入图片描述
最常用的就是\n,表示换行操作。
补充一个八进制和十六进制,八进制表示出来之后,最大的值为7。
十六进制的表示为,1-9,a,b,c,d,e,f ,用a,b,c,d,e,f,来表示10-15
在屏幕上面打印一个单引号,打印一个字符串,字符串的内容是一个双引号。代码应该这样写。

int main()
{
	printf("%c\n",'\'');
	printf("%s\n","/"");
	return 0;
}

这样就输出了单引号和双引号,用到转义字符。
下面来看两道笔试题

int main()
{
	printf("%d\n",strlen("abcdef"));
	return 0;
}

这里要说到strlen,strlen是一个函数,求字符串长度的函数,统计到\0,所以这里输出的是6,因为字符串的结束标志是\0,所以结果是6。

再来看第二道笔试题

int main()
{
	printf("%d\n", strlen("c:\test\328\test.c"));
	return 0;
}

这道题的结果是14,因为有转义字符,这里\t是转义字符,所以算一个字符,\32也是转义字符,表示八进制数字,所以也算一个字符,所以这样统计出来之后就是14个字符。

选择语句

选择语句顾名思义就是选择,就是如果XXX,就XXX。
来到CSDN你要好好学习吗?——好好学习->强大的能力。
来到CSDN你要好好学习吗?——不好好学习->菜鸡
用代码实现就是下面这个样子:

int main()
{
	int efforts = 0;\
	printf("是否好好学习,是,请输入1,否,请输入0\n");
	int scanf("%d", &efforts);
	if(efforts == 1)
	{
		printf("强大的能力\n");
	}
	else
	{
		printf("菜鸡\n");
	}
    return 0;
}

if 里面是判断条件,else是此外的意思,除了if之外的情况。

循环语句

循环语句一共有三种:
for循环
while循环
do while循环

while循环

while循环的判断条件就是括号里面是否为真,为真就继续循环,为假则跳出循环。

int main()
{
    printf("来到CSDN\n");
    int line = 0;
    while(line<=40000)
   {
        line++;
        printf("我要继续努力敲代码\n");
   }
    if(line>40000)
        printf("我就是大佬\n");
    return 0;
}

上面这个循环的判断条件就是line的值,每循环一次之后line加1;++就是+1的意思。在line加了40000次之后就跳出循环.。因为此时line变成了400001,while循环表达式判断为假,所以跳出循环。接着假如if判断,判断为真,输出“我就是大佬”。

for循环

for循环由三个表达式构成 for(表达式1;表达式1的变量的取值范围;表达式1 的变量的增减方式),用代码来表示:

int main()
{
	int a = 0;
	int i = 0;
	for(i = 0;i < 10;i++)
	{
		printf("%d ",a);
		a++;
	}
	return 0;
}

打印出的结果是 0,1,2,3,4,5,6,7,8,9。因为每次for循环之后,都会使i加1,当i等于10的时候,不满足for循环的判断条件i < 10 所以就跳出循环。这个就是简单的for循环。

do while循环

do while() 循环是不论怎么样,都会先执行一次,然后根据 while() 里面的判断条件,如果判断为真,就继续执行循环,如果为假,就停止循环。

int main()
{
	int a = 1;
	int i = 0;
	do 
	{
		printf("%d\n", a);
		i++;
	} while (i < 10);
	return 0;
}

这里也是输出10个1,因为在循环十次之后,就跳出循环了,判断条件就是 i < 10 所以打印10个1。

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lockey-s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值