目录
一.常量及其分类
(1)字面常量
例如:
3.14 浮点型字面常量
5 整型字面常量
'a' 字符型字面常量
(2)const修饰的常变量
(1)没有const的修饰时:
#include <stdio.h>
int main()
{
int num = 10;
printf("%d\n", num);
num = 20;
printf("%d\n", num);
return 0;
}
结果:第一次为10,第二次为20.说明此时的num的值可以进行修改。
(2)有const修饰时:
#include <stdio.h>
int main()
{
const int num = 10;
printf("%d\n", num);
num = 20;//此时num的不能发生改变,是因为有const进行修饰 ,致使num不能发生改变。
}
(3)#define定义的标识符常量
#define M 10
#include <stdio.h>
int main()
{
int a = 3;
int sum = a * M;
printf("sum=%d\n", sum);
return 0;
}
(4)枚举常量
#include<stdio.h>
enum Sex
{
MALE,
FEMALE,
SECRET
};
int main()
{
enum Sex sex = MALE;//进行初始化的时候,只能在enum进行选择,枚举就是所有的可能。
printf("%d\n", MALE);
printf("%d\n", FEMALE);
printf("%d\n", SECRET);
return 0;
//打印的结果为0,1,2
}
二.字符串+转义字符+注释
(1)字符串:
举例:"abcdef"即为字符串 'a'这种为字符
#include <stdio.h>
int main()
{
char arr1[] = "bit";
char arr2[] = { 'b','i','t' };
char arr3[] = { 'b','i','t','\0' };
printf("%s\n", arr1);
printf("%s\n", arr2);
printf("%s\n", arr3);
printf("%d\n", strlen(arr1));
printf("%d\n", strlen(arr2));
printf("%d\n", strlen(arr3));
//长度的结果为:3,35,3
//原因为:arr1的内容为“bit\0”,
// arr2的内容为“bit...”,所以arr2的长度为随机值,
// arr3的内容为“bit\0”
//计算长度时,只有遇到\0时才会截止。
return 0;
}
(2)转义字符:
相关转义字符的使用:
1)\?的使用
#include <stdio.h>
int main()
{
printf("%s\n", "\?"); //当在?前面添加一个\时,可以打印出?;
return 0;
}
2) \'的使用
#include <stdio.h>
int main()
{
printf("%s\n", "\'");//当在'前面添加一个\时,可以打印出'
return 0;
}
3)\''的使用
#include <stdio.h>
int main()
{
printf("%s\n", "\''");//当在''前加上一个\时,可以打印出''
return 0;
}
4)\\的使用
4.\\的使用
#include <stdio.h>
int main()
{
printf("%s\n","\\"); //打印的结果一个\
return 0;
}
5)\ddd的使用:ddd表示1-3个八进制的数字
#include <stdio.h>
int main()
{
printf("%s\n", "\130");
return 0;
//打印的结果为X,原因是\130改为八进制为:88,而88的ASCII表中代表的值为X
}
#include <stdio.h>
int main()
{
printf("%s\n", "\73");
return 0;
//打印的结果为;原因 是\73改为八进制为:59,而59的ASCII表中代表的值为;
}
6)\xdd的使用: dd表示1-2个十六进制的数字
#include <stdio.h>
int main()
{
printf("%c\n", '\x55');
return 0;
//打印的结果为U。原因是十进制55转为十六进制为85,而85的ASCII值为U,所以结果为U
}
(3)注释:
/*#include <stdio.h>
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
scanf("%d %d", &num1, &num2);
sum = num1 + num2;
printf("%d\n", sum);
return 0;
}*/
[注]:/**/这种注释是c语言注释,不足之处在于不能够嵌套使用。
而//是c++的注释,可以注释一行也可注释多行。
三.选择语句
#include <stdio.h>
int main()
{
int a = 0;
printf("你会去敲代码吗?(选择1或0):>");
scanf("%d", &a);//注意使用scanf时不需要使用\n
if (a == 1)
{
printf("坚持,你会有好offer\n");
}
else
{
printf("放弃,回家卖红薯\n");
}
return 0;
}
四.循环语句
#include <stdio.h>
int main()
{
int len = 0;
while (len < 2000)//while语句的判断条件是当条件不满足()时,则循环停止。
{
len++;
printf("继续努力:%d\n",len);
if (len == 500)
{
printf("我谈恋爱了\n");
break;//break语句与if语句无关,此处的break是跳出while语句。
}
}
if (len > 2000)
{
printf("好offer\n");
}
return 0;
}
五.函数
六.函数
(1):未使用函数的两数之和。
#include <stdio.h>
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
scanf("%d%d", &num1,&num2);
sum = num1 + num2;
printf("%d\n", sum);
return 0;
}
(2):使用函数的两数之和
#include <stdio.h>
int ADD(int x, int y)
{
int z = x + y;
return z;
}
int main()
{
int num1 = 0;
int num2 = 0;
scanf("%d %d", &num1, &num2);
int sum = ADD(num1, num2);
printf("%d\n", sum);
return 0;
}