一、语句及注释
1.语句
C语言的代码是由一个个语句构成的,在语句中包含大概五种分为空语句、表达式语句、函数调用语句、复合语句以及控制语句(控制语句为重中之重!!)。
空语句,一般是用于一个地方需要一个语句,却不需要用来实现功能。
表达式语句,一般就是在表达式后面加一个分号。
函数调用语句,一般就是在函数调用后面加上分号。
复合语句,大括号内的一个代码构成复合语句。
控制语句,因为其的重要性,在后期会单独 一 一阐述。
#include <stdio.h>
int Add(int x,int y){
return x+y;
}
int main(){
; \\这个语句即为空语句
int a=0;
int b=10;
a=b+5; \\表达式语句
printf("%d",a);\\函数调用语句
int ret=Add(5,3);\\函数调用语句
int i=0;
for(i=32,i<127,i++)\\for循环大括号内的就是复合语句,也是一个循环执行语句
{
printf("%c ",'i');
}
return 0;
}
控制语句⽤于控制程序的执⾏流程,以实现程序的各种结构⽅式(C语⾔⽀持三种结构:顺序结构、选择结构、循环结构)。
1. 条件判断语句(分支语句):if switch
2.循环执行语句:do while while for
3.转向语句:break goto continue return
今天就先说一下if条件语句,想必大家在以前都玩过猜数字游戏吧?现在我们想一想如何就能用c语言代码来完成呢?
#define _CRT_SECURE_NO_WARNINGS \\在vs2022中为了防止报错在使用printf时要添加以上代码
#include <stdio.h>
int main(){
int secret==6;\\在这个地方可以引用time库函数(需要用库函数声明),srand函数使该数字为随机值,并可以通过rand函数可以限制他的大小区间。
int guess=0;
int n=0;
while(n<=3){
scanf("%d",&guess);
if(guess==secret){
printf("你是我肚里的蛔虫吗?\n");
break;
}
else
printf("猜错了,请在试试吧\n");
n++;
if(n==3){
printf("水平不太行哦,还得练,略略略\n")
}
}
return 0;
}
要不看一个阶乘压压惊?
#include <stdio.h>
\\阶乘
double Pow(int n,int k) {
if (k > 0) {
return n * Pow(n, k - 1);
}
else if (k == 0) {
return 1;
}
else
return 1.0 / Pow(n, -k);
}
int main() {
int n = 0;
int k = 0;
scanf("%d%d", &n, &k);
double ret = Pow(n, k);
printf("%lf\n", ret);
return 0;
}
2.注释是什么?我们为啥要写注释?
1.注释是对代码的说明,编译器会忽略注释,也就是说,注释对实际代码没有影响。
2.注释是给程序员⾃⼰,或者其他程序员看的。
3.好的注释会让人一目了然非常清楚,不过在写注释时不要过度注释哦。4.好的注释会让你的面试官对你青睐有加。(嘻嘻,又是一个小技巧)
注释分为两种:一种是\**\;(这种不是很好用,博主懒,直接不讲了),
第二种是\\(可以通过快捷键实现一键注释 ctrl +k+c 一键取消注释 ctrl+k+u)
注意:注释在使用时是会被替换为一个空格("abds\*v*\o"在打印后为”abds o“)。
二、C语言的数据类型
1.1 字符型
char
[signed] char
unsigned char
1.2 整型
//短整型
short [int]
[signed] short [int]
unsigned short [int]
//整型
int
[signed] int
unsigned int
//⻓整型
long [int]
[signed] long [int]
unsigned long [int]
//更⻓的整型
//C99中引⼊long long [int]
[signed] long long [int]
unsigned long long [int]
1.3 浮点型
float
double
long double
1.4 布尔类型
_Bool (bool) 在c语言中原来并没有这个 , 原来是整数0为假。非零为真
布尔类型的使⽤得包含头⽂件 <stdbool.h>
布尔类型变量的取值是:true或者false.
#include <stdio.h>
#include <stdboll.h>
int main(){
boll flag= true;
if(flag)
printf("i like c语言\n");
}
1.5 计算数据类型的长度
1.51 sizeof操作符
sizeof 是⼀个关键字,也是操作符,专⻔是⽤来计算sizeof操作符数的类型⻓度的,单位是字节。?
sizeof 操作符的操作数可以是类型,也可是变量或者表达式。
sizeof( 类型 )
sizeof 表达式
sizeof 的操作数如果不是类型,是表达式的时候,可以省略掉后边的括号的。
sizeof 后边的表达式是不真实参与运算的,根据表达式的类型来得出⼤⼩。
在用printf输出时需要使用%zd
#include <stdio.h>
int main()
{
short s = 2;
int b = 10;
printf("%d",(int));
printf("%d",b);\\输出结果都为4
printf("%d\n", sizeof(s = b+1));\\输出结果为2,不参与计算仍为s
printf("s = %d\n", s);\\输出2 ,没有计算
return 0;
}
1.52 数据类型长度
#include <stdio.h>
int main()
{
printf("%zd\n", sizeof(char));
printf("%zd\n", sizeof(_Bool));
printf("%zd\n", sizeof(short));
printf("%zd\n", sizeof(int));
printf("%zd\n", sizeof(long));
printf("%zd\n", sizeof(long long));
printf("%zd\n", sizeof(float));
printf("%zd\n", sizeof(double));
printf("%zd\n", sizeof(long double));
return 0;
}
通过上述代码就能实现输出数据字符类型长度。
2.signed和unsigned
C语⾔使⽤ signed 和 unsigned 关键字修饰字符型和整型类型的。
signed 关键字,表⽰⼀个类型带有正负号,包含负值;
unsigned 关键字,表⽰该类型不带有正负号,只能表⽰零和正整数。
对于 int 类型,默认是带有正负号的,也就是说 int 等同于 signed int 。
对于char类型,C语⾔规定 char 类型默认是否带有正负号,由当前系统决定。
这就是说, char 不等同于 signed char ,它有可能是 signed char ,也有可能是
unsigned char 。所以在使用时需要注意提前给它进行限制。
今天的讲解就到此结束啦,再见,谢谢大家的观看咯。