首页 > 其他分享 >c的基本语法(课上笔记)

c的基本语法(课上笔记)

时间:2023-09-27 16:37:07浏览次数:45  
标签:字符 %. scanf 笔记 语法 课上 num 读入 printf

"#"的意义

预处理,在编译时进行内容代替

scanf

对于scanf("");
引号中内容为必须输入的内容。
当输入多个数据时,默认输入的数据间以空格或者回车分开。
对于int,直接相除为向下取整
14.0f格式即表示(float)14.0

定义常量的方法

#define CSP o
表示将CSP定义为o(CSP为宏,o为内容)
const int i=常量
ps:常量只有初始化的时候能赋值,在过程中无法赋值。

标识符

标识符的名字只能由字母,_和数字组成,其中数字和下划线最好不在排头。

printf

%8d

在引号中,%8d表示占8位宽度。

%.8f%.8lf

%.8f%.8lf表示取前8位小数。%d在宽度不止8位时会忽略该限制,当小于8位时会在前自动补0.

%.8e

会显示位指数形式的浮点数,并且是显示八位小数宽度。

%.8g

包含了四舍五入,会自动确认小数精度输出,其中整数小数位数加起来不会超过8,且会自动去掉末位的0.

注意区分宽度和精度!!!

转义符 \

在printf里的输出

\n 表示回车换行

\a 产生一声鸣响

\b 光标会回退一个字符,可能会覆盖先前内容

\t 水平制表符,通常按照8位为标准,不足8位会补齐空格到8位

\\ 在printf的引号中,表示输出\

\"" 输出双引号

%% 输出%

输入函数

从第一个非空白字符(空白字符包含空格符,水平和垂直制表符,换页符和换行符)开始

scanf的输入变量前必须包含地址符&

%i

根据你输入的二进制,八进制,十六进制自动识别

点击查看代码
int num;
char ch;
//printf("input num and cj:");
scanf("%i%c",&num,&ch);
printf("num=%d\nch=%c\n",num,ch);

输入

点击查看代码
0x12

输出

点击查看代码
num=18
ch=10
空格的ASCLL码为32,回车为10

012 表示八进制的12

0x16 表示十六进制的12

如果写成scanf(%d\n",&a);会无法结束读入
scanf("%4d",&a);会自动读入4位,例如读入0009实际上是读入9.
scanf在遇到与标识符不一的内容会退回缓存区,将已经读入的数赋给当前变量。
对于两条scanf语句,如果前一句输入的是int,那么缓存区会被退入空格,那么下一句如果入读字符的话需要写成scanf(" %c",&c);
并且读入字符数组不需要&
例如scanf("%s",str);此处是因为str表示的是str第一个元素的地址,对应str[0]

ps:字符数组读入时遇到空格会自动结束,但遇到回车不会,且字符数组中不能包含空格。

标签:字符,%.,scanf,笔记,语法,课上,num,读入,printf
From: https://www.cnblogs.com/tangwk/p/17732955.html

相关文章

  • Spring-Boot-Starter 学习笔记(1)
    Spring-Boot-Starter1.准备配置类和Bean对象SpringBoot提供了两个注解:@Configuration:Spring提供的配置类注解,作用在类上,代表整个类是个Spring配置类,对照传统的SpringXML配置文件。@Bean:作用于方法上,代表此方法的返回值(对象)将会被Spring容器所管理,从而完成Bean......
  • Python学习笔记2
    defdouble(a):"""两倍处理三个引号可以多行注释,3个单引号也可以用来多行注释"""returna*2a=double(5)print(a)ifisinstance(a,int):#检测是否是某个类型print("a是整数")print(True+1)#True为1print(False+1)......
  • 软考笔记(1)--操作系统
     前言操作系统模块属于基本知识范畴,通常会在单选题中出现,约占2~5分左右。主要知识结构如下图示:  一、基本知识点操作系统是计算机系统中的核心系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源,在计算机和用户之间起接口的作用。......
  • FatFs文件系统移植应用笔记
    FatFs文件系统移植应用笔记使单片机拥有按文件访问存储器中数据的能力,要满足两个必要的条件。其一是存储器已完成格式化操作,即存储器按FAT/FAT16/FAT32等格式记录数据,其二是软件中实现文件系统功能,即能够按照存储器中文件记录的格式,操作已有的数据或添加新数据。FatFs是一个轻......
  • Nginx神奇的if语法
    我在Nginx里声明了一个变量,中间很多逻辑处理,最后想根据这个变量做http还是https跳转。话不多说,直接上nginx.confset$usessl"0";...if($usessl="1") { proxy_passhttps://$proxyserver; } if($usessl="0") { proxy_passhttp://$proxyserver; }启动......
  • 后端笔记 - iText5处理pdf
    1.引入依赖<!--生成PDF的工具包--><dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.12</version></dependency......
  • Android上层WatchDog学习笔记_2
    一、简述1.了解WatchDog的原理,可以更好的理解系统服务的运行机制。二、WatchDog实现1.代码实现位置//frameworks/base/services/core/java/com/android/server/Watchdog.javapublicclassWatchdogextendsThread{...}可见Watchdog是一个线程。2.WatchDo......
  • CPP面向对象笔记
    基本属性即在类中包含的一系列变量方法即在类中定义的一系列函数Public,PrivateandProtected在没有继承的情况下,private与protected效果相同即都无法在类外直接访问调用实在想要访问,加个函数就行public则可以随意访问调用static仅与类的整体全局有关不受具体哪......
  • 动态规划——矩阵优化DP 学习笔记
    动态规划——矩阵优化DP学习笔记前置知识:矩阵、矩阵乘法。矩阵乘法优化线性递推斐波那契数列在斐波那契数列当中,\(f_1=f_2=1\),\(f_i=f_{i-1}+f_{i-2}\),求\(f_n\)。而分析式子可以知道,求\(f_k\)仅与\(f_{k-1}\)和\(f_{k-2}\)有关;所以我们设矩阵\(F_......
  • Python语法(4)
    Python语法(4)这次我们讲的是字符串,这是我认为特别重要的地方!!!1.字符与整数之间的联系每个常用字符其实都有一个对应的整数表示,二者之间可以相互转化,整数范围大概是-128-127,二者之间是可以相互转化的,但是要注意的是目前没有出现负数与之对应的字符将字符转化成对应的ASCII码用o......