2023-10-08 编译和链接等
1.
#pragma once
编译器在新建好.h文件之后自己加的
作用:防止头文件重复引用
2.换行符和回车符
换行符用于表示文本的换行,将光标移动到下一行的开头。在C语言中,可以使用换行符('\n')来表示换行。换行符在打印文本时会将文本内容移动到下一行,但不会改变当前行的水平位置。
回车符用于将光标移动到当前行的开头。在C语言中,可以使用回车符('\r')来表示回车。回车符会使光标回到当前行的起始位置,但不会移动到下一行。
3.退格符'\b'和删除操作
退格符在文本中的作用是向后移动光标一个位置,删除光标前一个字符。它并不会真正删除字符,而是通过移动光标的位置来达到删除的效果。可以理解为退格符将光标向后移动,使得前一个字符不再显示。
删除操作通常用于删除文本中的字符或内容。它可以删除光标位置上的字符或选定的文本内容,将其彻底移除。
2023-10-12_算术操作符等
1.++运算符:分为前置++和后置++
前置++:先加1,后使用,即先使用变量中内容,然后给结果加1
后置++:先使用变量中内容,整个表达式结束时,给变量加1
2.printf()参数与占位符是一一对应关系,如果有n个占位符,printf()的参数就应该有n+1个。
3.scanf():占位符
scanf()处理数值占位符时,会自动过滤空白字符,包括空格、制表符、换行符,scanf输出字符占位符的时候,不忽略空白字符,总是返回当前第一个字符,无论该字符是否为空格。
scanf的占位符%s表示读取一个字符串,遇到空白字符就停止读取。
附:多组输入
while(scanf("%d", &n)!=EOF){
...
}
4.if语句
(1)if后的条件表达式
#include <stdio.h>
int main()
{
int i = 0;
for (i = 0; i<10; i++)
{
if (i = 5)
printf("%d ", i);
}
return 0;
}
注意if后的条件表达式,如果表达式的==写成了赋值,相当于每次循环尽量都是将i的值设置成了5,5为真,因此每次都会打印5。为了防止出现这种错误,可将变量写在等号的右边:
if (5 == i) ...
//这样的话,如果把 == 误写成 = ,编译器就会报错
(2)悬空else问题
如果有多个if和else,记住else总是和最接近的if匹配。
5.从大到小输出
#include <stdio.h>
int main()
{
int a = 2;
int b = 3;
int c = 1;
scanf("%d%d%d",&a, &b,&c);
if(a<b)
{
int tmp = a;
a = b;
b = tmp;
}
if(a<c)
{
int tmp = a;
a = c;
c = tmp;
}
if(b<c)
{
int tmp = b;
b = c;
c = tmp;
}
printf("a=%d b=%d c=%d\n", a, b, c);
return 0;
}