C语言编程1:变量、常量与输入输出详解

C语言1🔥: 变量,赋值与初始化,常量,输入与输出

一、变量🌿

✨1.1 定义

在C语言中变量是一个用来保存数据的地方。当我们需要在程序里保存数据时就需要用到变量。

✨1.2 变量名称

变量名称是需要我们自己来命名。

变量的名字是一种"标识符",意思是它是用来识别这个和那个的不同的名字

标识符有标识符的构造规则

①标识符只能由字母数字下划线组成

②数字不可以出现在第一个位置上

③c语言的关键字(如函数名,数据类型等),不能用来充当变量的名字

以上三点必须都满足才能作为变量

✨1.3 变量类型

C是一种有类型的语言,所有的变量在使用之前必须定义或者声明,所有的变量都必须具有确定的数据类型

数据类型表示在变量中可以存放什么样的数据,变量中只能存放指定类型的数据,程序运行过程中也不能改变变量的类型

int price = 0;

这一行定义了一个变量,这个变量的名字是price,数据类型是int,初始值是0

二、初始化与赋值🌿

变量定义的一般形式: <类型名称><变量名称>;

举个栗子:int price=0;

​ int(类型名称) price(变量名称) ;

在这一行中我们定义了一个变量,变量的名字是price,类型是int,初始值是0。

✨2.1 赋值

price=0是一个式子,这里的"=“是一个赋值运算符,表示将”="(等于号)右边的值赋给左边的变量

如int a=b;这就是赋值。 和数学不同,a=b在数学中表示关系,即a和b的值是一样的;而在程序设计中,a=b表示要求计算机做一个动作:将b的值赋给a

比如·:int price=1;的意思就是把1赋给price,让price的值为1

int a=3; 
int price=a;

这个代码的意思是,让a的值为3,也就是a=3

int price=a;的意思是:把a的值赋给price;也就是让price的值也=3

✨2.2 初始化

当赋值发生在定义变量的时候,就像给变量price=0那样,就是变量的初始化。

所有的变量在第一次被使用(出现在赋值运算符的右边)之前应该被初始化一次(也就是被赋值一次)如果变量没有被初始化,变量的值就会变成一个随机数,可能很大也可能很小不固定但一定不会是你想要的那个数。

✨2.3 变量初始化

<类型名称><变量名称>=<初始值>;

如:int price=0;
int amount=0;int a;int a,b;int a,b=1;    (a的值不是1,b的值才是1)

✨2.4 表达式

有运算符的式子就叫做表达式

三、常量

3.1 定义

常量根据字面意思也就是:固定不变的数

常量在C语言中也可称为直接量

3.2 const

const是一个修饰符,加在int的前面,用来给这个变量加上一个const(不变的)的属性。这个const的属性表示这个变量的值一旦初始化,就不能再修改

如:const int number=100;

如果试图对常量做出修改,就会被编译器报错

四、C语言的基本框架

4.1 编写格式

#include <stdio.h>int main()
{return=0;}

​ 在上面的框架中,int main()函数表示该程序的入口,程序每次都是从main函数的第一行开始执行。注:在任何一个程序中,都只能出现一个main函数。如果写出两个int main() 函数,程序将会报错

即:一个程序有且仅有一个main函数(主函数)

    {}大括号中用于存放程序的内容,<stdio.h>就是头文件(要调用库函数就需要用这个头文件)

最后以return 0;结束,return 0表示程序的返回值是0.

   语法规则:C语言中,主程序内部每写完一个功能的代码都要加一个“;”表示完成该函数。c语言需要被编译才能运行

特别注意:程序中的符号都必须使用英文模式下进行输入,不然系统无法识别。(这可是%99的初学者都会犯的错误)

4.2 注释

注释用来方便自己或别人更好的读懂所写的程序,编译器不会去执行注释里的所有程序,编译器遇到注释会跳过。在C语言中表示注释有两种方式,

第一种:用 // 来表示一行的注释

第二种:用 /* */ 来表示多行的注释

   使用注释可以更好的让别人读懂你的程序,让程序看起来一目了然,条理清晰

用法如下:

#include <stdio.h>
//包含头文件int main()          //主函数入口
{
/*程序*/return 0;//返回值为0
}

在打代码前,我们一定要先把程序框架打好,然后在开始输入代码,这样可以避免遗漏,减少报错概率。而且这也是一个非常好的编程习惯。

五、四则运算

四则运算c符号意义
++
--
×*****
÷/
%取余
()()括号

**%(取余)**表示:取两个数相除以后的余数

六、输入与输出

6.1 输入

scanf()函数:可以让用户输入程序

用法:

#include <stdio.h>int main()
{int a;        //初始化printf("请输入a的值:");       //打印输出scanf("%d",&a);               //输入return 0;                    //返回值0}

scanf函数后面的每个数据要用 & 来连接,数据之间用逗号(,)隔开

int a;
int b;
scanf("%d %d",&a,&b);

6.2 输出

**printf()**函数:输出。在终端窗口(程序运行成功后弹出的窗口)中显示(打印)出printf()函数中的数据。注:在printf()函数的 " " 双引号中用户输入什么它就会打印出什么

如:

#include <stdio.h>int main()
{printf("hello! would");         显示:hello! wouldprintf("123456");                     123456printf("abc 123456");                 abc 123456int a=6;printf("a=%d",a);                     a=6return 0;}

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

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

相关文章

直击2024 WAIC现场:关于大模型,热情、焦虑与冷静同在

世博展览馆内人们的热情&#xff0c;与世博中心内参与论坛的人们&#xff0c;心情似乎并不成正比。 展馆内人们看到的大模型加速落地是表象&#xff0c;也是结果&#xff1b;而论坛里的企业家和人工智能学者们则更关注大模型的未来发展方向和商业化进程&#xff0c;以及AI安全…

计算机的错误计算(二十三)

摘要 计算机的错误计算&#xff08;二十二&#xff09;阐明&#xff1a;对于结果应该为 0的算式&#xff0c;即使增加计算精度&#xff0c;也得不出0. 针对 &#xff0c;本节给出一种解决方案。 计算机的错误计算&#xff08;十九&#xff09;展示了计算机对 的错误计算&…

【0基础学爬虫】爬虫框架之 feapder 的使用

前言 大数据时代&#xff0c;各行各业对数据采集的需求日益增多&#xff0c;网络爬虫的运用也更为广泛&#xff0c;越来越多的人开始学习网络爬虫这项技术&#xff0c;K哥爬虫此前已经推出不少爬虫进阶、逆向相关文章&#xff0c;为实现从易到难全方位覆盖&#xff0c;特设【0…

Python遥感开发之时序数据的线性插值

Python遥感开发之时序数据的线性插值 0 历史博客1 实现思路2 代码实现3 效果展示 前言&#xff1a;在遇到空间数据的时候&#xff0c;尤其是哨兵、Landsat或者MODIS数据会出现局部值的空缺&#xff0c;为了解决这些值的空缺&#xff0c;通常采用插值的方法&#xff0c;本博客使…

在Ubuntu 14.04上安装和配置VNC的方法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 VNC&#xff0c;即“虚拟网络计算”&#xff0c;是一种连接系统&#xff0c;允许您使用键盘和鼠标与远程服务器上的图形桌面环境进…

Python编程学习笔记(1)--- 变量和简单数据类型

1、变量 在学习编程语言之前&#xff0c;所接触的第一个程序&#xff0c;绝大多数都是&#xff1a; print("Hello world!") 接下来尝试使用一个变量。在代码中的开头添加一行代码&#xff0c;并对第二行代码进行修改&#xff0c;如下&#xff1a; message "…

中国星坤X1224系列线对板连接器:小巧稳定,助力物联网终端高效运行

在物联网、电器和消防等领域&#xff0c;终端设备的安全稳定运行至关重要。为了满足这些领域对连接器高可靠性、小巧轻便和耐高温的需求&#xff0c;X1224系列线对板连接器应运而生。这款连接器以其独特的设计和卓越的性能&#xff0c;成为了终端设备中不可或缺的一部分。 一、…

LeetCode415-字符串相加

题目 代码 public String addStrings(String num1, String num2) {if (num1 null) {return num2;}if (num2 null) {return num1;}int min Math.min(num1.length(), num2.length());int abs Math.abs(num1.length() - num2.length());// 0.字符串对齐&#xff08;补0&…

Ubantu22.04 通过FlatPak安装微信

Ubuntu22.04 下使用Flatpak稳定安装微信&#xff01; 国际惯例&#xff0c;废话不多说&#xff0c;先上效果图。为啥使用Flatpak,因为Wechat官方只在FlatPak发布了最新的版本。之前使用了Wine以及Dock安装Wechat,效果都不是很理想&#xff0c;bug很多。所以使用了FlatPak。 Fl…

免费的鼠标连点器电脑版教程!官方正版!专业鼠标连点器用户分享教程!2024最新

电脑技术的不断发展&#xff0c;许多用户在日常工作和娱乐中&#xff0c;需要用到各种辅助工具来提升效率或简化操作&#xff0c;而电脑办公中&#xff0c;鼠标连点器作为一种能够模拟鼠标点击的软件&#xff0c;受到了广大用户的青睐。本文将为大家介绍一款官方正版的免费鼠标…

力扣第134场双周赛压轴题:子数组按位与值为K的数目

题目描述 给你一个整数数组 n u m s nums nums 和一个整数 k k k &#xff0c;请你返回 n u m s nums nums 中有多少个子数组满足&#xff1a;子数组中所有元素按位 A N D AND AND 的结果为 k k k 。 子数组是数组中连续的非空元素序列。 数据范围 1 ≤ n u m s . l e …

解释一下 Redis 的主从复制原理?

Redis 的主从复制是 Redis 实现数据冗余和高可用性的重要机制。它允许创建一个或多个 Redis 服务器&#xff08;从服务器&#xff09;来复制主服务器的数据&#xff0c;从而实现数据的备份和读写分离&#xff0c;提高系统的性能和可靠性。 主从复制的工作原理主要包括以下几个…

使用Java构建一个高性能的消息队列系统

使用Java构建一个高性能的消息队列系统 大家好&#xff0c;我是微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 消息队列系统在现代分布式系统中起着至关重要的作用&#xff0c;它能够提供异步通信、解耦系统组件、缓冲和削…

一.2.(3)放大电路的图解分析方法和微变等效电路分析方法;

放大电路的主要分析方法:图解法、微变等效电路法 这里以共射放大电路为例 (1) 图解法: 1.静态分析 首先确定静态工作点Q,然后根据电路的特点,做出直流负载线,进而画出交流负载线,最后,画出各极电流电压的波形。求出最大不失真输出电压。 估算IBQ&#xff0c;然后根据数据手册里…

09.QT控件:按钮类控件

1. QPushButton 在QT中使⽤ QPushButton 表⽰⼀个按钮。QPushButton 继承⾃ QAbstractButton&#xff0c;这个类是⼀个抽象类&#xff0c;是其他按钮的⽗类。 &#xff08;1&#xff09;QAbstractButton 中&#xff0c;和 QPushButton 相关性较⼤的属性&#xff1a; &#xf…

STM32-Unix时间戳和BKP备份寄存器以及RTC实时时钟

本内容基于江协科技STM32视频学习之后整理而得。 文章目录 1. Unix时间戳1.1 Unix时间戳简介1.2 UTC/GMT1.3 时间戳转换 2. BKP备份寄存器2.1 BKP简介2.2 BKP基本结构2.3 BKP库函数 3. RTC实时时钟3.1 RTC简介3.2 RTC框图3.3 RTC基本结构3.4 硬件电路3.5 RTC操作注意事项3.6 R…

vue事件处理v-on或@

事件处理v-on或 我们可以使用v-on指令&#xff08;简写&#xff09;来监听DOM事件&#xff0c;并在事件触发时执行对应的Javascript。用法&#xff1a;v-on:click"methodName"或click"hander" 事件处理器的值可以是&#xff1a; 内敛事件处理器&#xff1…

LocalDateTime 字符串与时间戳的相互转换

主要介绍LocalDateTime的格式化字符串与时间戳的相互转换 常见带日期时间格式&#xff1a; 字段名字段值api格式DateTimeFormatter.ISO_LOCAL_DATE_TIME字符串patternyyyy-MM-dd’T’HH:mm:ss.SSS’示例2022-06-15T22:06:29.483字符串patternyyyy-MM-dd HH:mm:ss示例2022-06-…

Golang | Leetcode Golang题解之第213题打家劫舍II

题目&#xff1a; 题解&#xff1a; func _rob(nums []int) int {first, second : nums[0], max(nums[0], nums[1])for _, v : range nums[2:] {first, second second, max(firstv, second)}return second }func rob(nums []int) int {n : len(nums)if n 1 {return nums[0]}…

SSRF靶场通关合集

目录 前言 SSRF总结 1.pikachu 1.1SSRF(curl) 1.1.1http协议 1.1.2 file协议查看本地文件 1.1.3 dict协议扫描内网主机开放端口 1.2 SSRF&#xff08;file_get_content&#xff09; 1.2.1 file读取本地文件 1.2.2 php://filter/读php源代码 2.DoraBox靶场 前言 最近…