C语言 字符类型

下面 我们来说字符类型

我们来看这个 保险单
在这里插入图片描述
金额 和 总额 都可以用数字类型 而性别则需要字符型

字符数据的存储 – ASCI码
在这里插入图片描述
字符类型 char 就是专为存储字符(如字母,标点和数字)而设计的类型。
使用单引号包含单个字符或转义字符去表示一个 char 类型的常量。

例如:‘a’、‘A’、‘5’、‘$’、"\n’,这些字符常量实际对应它们的 ASCI 码值。
例如,在数值上,字符常量’い 与数值 76 相等。
数字使用单引号括起来就成为字符常量,从而也就失去作为数字时的属性

字符型变量的声明: 格式大概为 char 变量名
例如

char ch;

这样 我们就 声明了一个名称叫做ch 的字符变量

字符型变量赋值
可以将一个字符型常量存入字符型变量,如:

ch2 ='6';

为ch2 赋值为字符’6’
写有单引号的’6’并不表示数字6,而表示字符’6’,或字符’6’所对应的ASCI 码值,即数值 54。

然后 字符类型 输入的方式有两种

方法1: 使用格式化输入函数scanf
我们 编写代码如下

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {char ch;scanf("%c", &ch);printf("您输入的字符是: %c\n", ch);return 0;
}

这里 我们用 scanf 控制获取用户键盘输入
然后 赋值给ch
然后用printf 输出ch

运行代码

这里 先回 要求我们输入内容
在这里插入图片描述
这里 我们输入Z
在这里插入图片描述
内容 就输出出来了 但是 scanf(“%c”, &变量); 只会读取其中一个字节 如果输入很多 就有问题了

方法2: 使用字符输入函数 getchar()

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {char ch;ch = getchar();printf("您输入的字符是: %c\n", ch);return 0;
}

getchar和 scanf(“%c”, &变量); 效果是基本一样的
在这里插入图片描述
我们输入 S
在这里插入图片描述
他们都是 捕获键盘输入一个字符 这里 它只捕获一个 而且用中文会乱码

输出的方法 也是两种
方法1:使用格式化输出函数printf
上面 我们也演示过了

printf("%c\n", 变量);

方法2:使用字符输出函数putchar()
参考代码如下

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {char ch;ch = getchar();putchar(ch);return 0;
}

putchar 括号中 放要输出的变量即可
我们输入 C
在这里插入图片描述
这里 输出就没什么问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/2447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Lua调用函数的方式汇总

在Lua脚本语言中&#xff0c;调用函数是一种基本的操作&#xff0c;它允许代码执行在函数定义中封装的操作。Lua 提供了几种灵活的方式来调用函数&#xff0c;以适应不同的场景和需求。以下是Lua中调用函数的几种常见方式&#xff1a; 1. 基本函数调用 最简单的调用方式是使用…

李沐56_门控循环单元——自学笔记

关注每一个序列 1.不是每个观察值都是同等重要 2.想只记住的观察需要&#xff1a;能关注的机制&#xff08;更新门 update gate&#xff09;、能遗忘的机制&#xff08;重置门 reset gate&#xff09; !pip install --upgrade d2l0.17.5 #d2l需要更新import torch from tor…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之五 简单进行车牌检测和识别

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之五 简单进行车牌检测和识别 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之五 简单进行车牌检测和识别 一、简单介绍 二、简单进行车牌检测和识别实现原理 …

深入理解Java消息中间件-消息的可靠性

基石&#xff1a;在分布式系统中实现消息的可靠性及其原理 在构建现代的分布式系统时&#xff0c;能否可靠地传递消息是衡量系统成功与否的一个关键。本文章旨在讨论如何实现消息的可靠性及其背后的原理&#xff0c;帮助Java技术架构师和开发者构筑一个稳固的系统。 消息可靠…

关于上传自己本地项目到GitHub的相关命令

https://www.cnblogs.com/nature161/p/15014265.html 根据教程里的来&#xff0c;主要注意这个命令&#xff1a; $ git pull --rebase origin master # 对GitHub的仓库包含了readme.md文件的情况先要执行这个命令再pull 如果你的GitHub是main分支想上传到main分支&#xff0…

Opencv_10_自带颜色表操作

void color_style(Mat& image); Opencv_10_自带颜色表操作&#xff1a; void ColorInvert::color_style(Mat& image) { int colormap[] { COLORMAP_AUTUMN, COLORMAP_BONE , COLORMAP_JET , COLORMAP_WINTER, COLORMAP_RAINBOW , COLOR…

编译器的学习

常用的编译器&#xff1a; GCCVisual CClang&#xff08;LLVM&#xff09;&#xff1a; Clang 可以被看作是建立在 LLVM 之上的一个项目, 实际上LLVM是clang的后端&#xff0c;clang作为前端前端生成LLVM IR&#xff0c;https://zhuanlan.zhihu.com/p/656699711MSVC &#xff…

Docker常用命令(镜像、容器、网络)

一、镜像 1.1 存出镜像 将镜像保存成为本地文件 格式&#xff1a;docker save -o 存储文件名 存储的镜像docker save -o nginx nginx:latest 1.2 载入镜像 将镜像文件导入到镜像库中 格式&#xff1a;docker load < 存出的文件或docker load -i 存出的文件…

程序猿成长之路之数据挖掘篇——朴素贝叶斯

朴素贝叶斯是数据挖掘分类的基础&#xff0c;本篇文章将介绍一下朴素贝叶斯算法 情景再现 以挑选西瓜为例&#xff0c;西瓜的色泽、瓜蒂、敲响声音、触感、脐部等特征都会影响到西瓜的好坏。那么我们怎么样可以挑选出一个好的西瓜呢&#xff1f; 分析过程 既然挑选西瓜有多个…

Android Studio 报错:AVD Pixel_3a_API_30_x86 is already running

在我的Android Studio和虚拟机运行时&#xff0c;我的电脑不小心关机了&#xff0c;在启动后再次打开Android Studio并运行虚拟机时发现报错。 Error while waiting for device: AVD Pixel_3a_API_30_x86 is already running. If that is not the case, delete the files at C…

c++设计模式之桥接模式(拼接组合)

桥接模式&#xff1a;就是进行拼接组装 应用举例&#xff1a; 1.定义了形状&#xff0c;抽象形状接口&#xff0c;圆&#xff0c;矩形 2.定义了颜色&#xff0c;抽象颜色接口&#xff0c;红色&#xff0c;蓝色 3&#xff0c;怎么桥接&#xff0c;抽象具体形状和具体颜色的组合…

应用部署tomcat的三种方式

由于一直在用springboot框架&#xff0c;集成了tomcat&#xff0c;快忘记如何单独部署tomcat了&#xff0c;以下&#xff0c;记录一下&#xff1a; 部署tomcat有三种方式&#xff1a; 一、方式一&#xff1a;将war包丢进webapps 这是最简单粗暴的方式&#xff1a;将web工程打…

用现成的容器来创建一个镜像,或者说再克隆一个一模一样的容器

前言&#xff1a;我在centos系统中使用docker拉取了一个centos镜像&#xff0c;并用这个镜像创建了一个hadoop容器&#xff0c;但是后面我又需要一个相同版本的hadoop镜像来创建其他容器&#xff08;比如hive容器&#xff09;&#xff0c;但是这个时候docker官网并没有对应版本…

个人投资者如何开通快速通道?

其实我们一直都在说快速通道&#xff0c;那么我们个人投资者如何才能开通快速通道呢&#xff1f; 怎样才能做到打板排序前列&#xff0c;成交速度快&#xff0c;适合高频交易呢&#xff1f; 我们一起来了解下&#xff01; 第一&#xff1a;什么是快速通道&#xff1f; 其实就…

C#基础|对象属性Property基础使用,业务特性

哈喽&#xff0c;你好&#xff0c;我是雷工。 探究OOP中属性的奥秘 认识类的属性&#xff08;Property&#xff09; 01 属性的使用 作用&#xff1a;在面向对象&#xff08;OOP&#xff09;中主要用来封装数据。 要求&#xff1a;一般采用Pascal命名法&#xff08;首字母要…

UDS的3字节故障码

在UDS的规范下面&#xff0c;使用19服务去读取故障码&#xff0c;会发现读到市面上各种车企的各种ECU中的所有的故障码读出来都是3个字节。这与前面的五位故障码占2个字节不符&#xff0c;其实读出来是3个字节就是UDS中制定的规范。 如今车企中主要采用的是三个字节的故障码。…

【北京迅为】《iTOP-3588开发板系统编程手册》-第19章 V4L2摄像头应用编程

RK3588是一款低功耗、高性能的处理器&#xff0c;适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用&#xff0c;RK3588支持8K视频编解码&#xff0c;内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP&…

c++新特性 智能指针实验

1.概要 c新特性 智能指针实验 2.实验 2.1 共同代码 #pragma once class A { public:A();~A();void fun();int a 5; }; #include "A.h" #include <iostream>A::A() {std::cout << "structure\n"; } A::~A() {std::cout << "de…

vben admin Table 实现表格列宽自由拖拽

更改BasicTable.vue文件 Table添加 resize-column“resizeColumn” 添加并 return resizeColumn const resizeColumn (w, col) > { setCacheColumnsByField(col.dataIndex, { width: w }); }; 在column中添加 resizable: true,

linux下编译c++程序报错“undefined reference to `std::allocator<char>::allocator()‘”

问题 linux下编译c程序报错“undefined reference to std::allocator::allocator()”。 原因 找不到c标准库文件。 解决办法 开始尝试给gcc指令添加-L和-l选项指定库路径和库文件名&#xff0c;但是一直不成功&#xff0c;后来把gcc改为g就可以了。