初识C语言

目录

一.常量

二.字符串

三.转义字符

四.注释

五.选择语句

六.循环语句

七.函数

一.常量

常量有以下四种类型:

1.字面常量

10;//整形常量
3.14;//浮点型常量
'a';//字符型常量
"abcdef";//字符串常量

这些常量常用作赋值给变量

2.const修饰的常变量

const是C语言中的关键字,被const修饰的变量具有了常属性,也就是拥有了常量的部分性质,但被修饰的变量本质上还是属于变量

int num = 10;
printf("%dn",num);
num = 20;//修改num的值为20
printf("%dn",num);

 变量没被const修饰之前是可以修改的

const int num = 10;
printf("%dn",num);
num = 20;
printf("%dn",num);

 而变量被const修饰后再修改它的值就会报错,说明被const修饰后的变量变成了值不能被修改的常变量

为什么说它是常变量呢?下面是它和常量的区别:

int arr[10] = { 0 };

以这种方式创建数组是没有问题的

int n = 10;
int arr[n] = { 0 };

 以这种方式创建数组就会报错,说明再[ ]中应该放入一个常量

const int n = 10;
int arr[n] = { 0 };

 被const修饰后仍然会报错,说明被const修饰的变量本质上还是变量

3.#define定义的标识符常量

define定义的标识符常量就是一个彻彻底底的常量

#define NUM 10

int a = NUM;
int arr[NUM] = { 0 };
printf("%dn",a);

这次没有报错,代码正常运行

4.枚举常量

enum也是C语言的一个关键字,下面是它的用法:

//以性别为例,分为男和女
enum Sex
{
    MAN,
    WOMAN
};//别忘了加分号,很容易忘

enum Sex s = MAN;

prinf("%dn",s);//MAN的初始值默认为0,然后依次增加1
printf("%dn",WOMAN);//1

 

 用它来定义数组一样可以,证明它也是一个常量

二.字符串

"abcdef";

字符串的结束标志是''

char str1[] = "abcd";
char str2[] = {'a','b','c','d'};

表面上他们是一样的,其实不然

 字符串会在末尾默认加上一个'',所以str1要比str2多出一个字符,终止字符的作用是很大的,从接下来的代码就可以看出:

char str1[] = "abcd";
char str2[] = { 'a','b','c','d' };

printf("%sn", str1);
printf("%sn", str2);

 用printf函数打印字符串时是打印''之前的字符

在str1中有一个已知的'';

而str2中没有一个确定位置的'',所以会一直打印,

直到遇到了内存中某个位置的终止字符''停止打印

打印出来的str2字符串后面的是随机的

printf("%dn", strlen(str1));//4
printf("%dn", strlen(str2));//随机值

strlen函数是库函数,使用时要在先包含一下头文件#include<string.h>

strlen函数的作用是计算字符串的长度

与printf函数一样,都是以''为结束标志

 三.转义字符

 大家可能会好奇三字母词是什么

??(  ->  [//左边的三个字符会被编译器转换为右边的字符
??)  ->  ]//
printf("(are you ok??)");//编译出来的结果并不是我们想要的
//      (are you ok]
printf("(are you ok??)");//? -> ?
//      (are you ok??)

不过现在三字母词已经被淘汰了,很多编译器已经不支持了

'  "  \  都是转义成斜杠后面的字符

printf("%cn",''');// '
printf("%sn",""");// "
printf("%sn","a");//这里斜杠a就会被当作警告字符,如果你只是想让它输出
                    //a的话,就需要在前再加一个

printf("%sn","\a");

a的作用是让你计算机发出蜂鸣声,如果感兴趣的话可以试一下,不过如果不能发出声音的话你也不要怪它,并不是所有电脑都支持的

b退格符 f进纸符 r回车 t水平制表符 v垂直制表符 这些转义字符很少用到,就不一一介绍了。

n大家应该很熟悉了

printf("abcdefn");
printf("abcndefn");

 下面这种介绍 ddd xdd 两个字符

 ddd  ddd表示1~3个八进制的数字,如:130

printf("%cn", '130');//130 -> 把130这个八进制数字转换成十进制数字
	                   //后得到的88,作为ASCII码值代表的字符输出

 

 xdd  表示1~2个十六进制数字,如:x30

	printf("%cn", 'x30');//x30 -> 把x30这个十六进制数字转换成十进制数字
	                       //后得到的48,作为ASCII码值代表的字符输出

 下面是ASCII表:

 ASCII码值范围:1~127

如果超出这个范围就会报错

下面来看一道例题

eg:

#include<stdio.h>
#include<string.h>

int main()
{
	printf("%dn", strlen("c:test628test.c"));//计算该字符串的长度,转义字符算一个字符

	return 0;
}

先自己动脑想一想这串字符串共有多少个字符

 接下来为大家揭晓答案

 是不是和你算的一样呢

四.注释

注释真的是一个好习惯,如果你要写一个很复杂的代码并且不加注释,那么可能只有上帝和你能看得懂你写的是什么,不过过一段时间后估计只有上帝看的懂了!

注释的作用:

1.用来解释代码

2.注释掉一些不需要的代码

同时有两种注释风格

/* 这个是C语言注释风格 */
// 这是C++注释风格(运用更为广泛,也更推荐)

C语言注释风格有个明显的缺陷,就是不能嵌套

/*#include<stdio.h>
#include<string.h>

int main()
{
/*	
printf("%dn", strlen("c:test628test.c"));//计算该字符串的长度,转义字符算一个字符
*/
	return 0;
}
*/

注释的时候并不能保证两两配对,第一个/*会和离他最近的*/结合而在他内部的另一个/*就会失去作用,导致下面的语句无法注释

所以大多时候我们还是习惯使用//来注释代码,方便且不会出错

五.选择语句(简略介绍,后期详细讲解)

1.if...else语句

#include<stdio.h>

//你去网吧
int main()
{
	int n = 0;
	printf("请输入你的年龄:");
	scanf("%d", &n);

	if (n >= 18)
	{
		printf("请进n");
	}
	else
	{
		printf("未成年人不得入内!n");
	}
	return 0;
}

 

 2.switch语句(后期详解)

六.循环语句

1.while语句

#include<stdio.h>

int main()
{
	int n = 1;
	
	while (n <= 100000)
	{
		printf("敲%d代码n",n);
		n++;
	}
	printf("大佬!n");

	return 0;
}
//真的会有十万行

希望大家都能够成为个大佬!

2.for语句(后期详解)

3.do…while语句(后期详解) 

七.函数

函数就是可以重复使用,实现目标功能的的模块

例如我们要实现从两个数中挑选出最大数的功能

#include<stdio.h>

int Maxof(int x, int y)//x和y是a和b的拷贝
{
	if (x > y)   //如果x大于y
		return x;//返回x的值
	else         //如果y大于x
		return y;//返回y的值
}

int main()
{
	int a;
	int b;
	printf("输入两个数的值:");
	scanf("%d %d", &a, &b);
	int max = Maxof(a, b);
	printf("较大者是%dn", max);

	return 0;
}

因为是初识C语言,所以很多都没有讲到,还请见谅!

希望这篇文章能对大家有点帮助,如果有错误的地方可以通过评论指出。

熬过无人问津后,才有诗和远方

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇

)">
下一篇>>