基本输入输出

C语言本身并没有输入输出功能的语句,数据的输入输出都是通过函数调用来实现的。

C语言提供了标准函数库,其中就包括了基本输入输出函数,C语言把这一类的函数的定义放在了头文件stdio.h中,

关于怎么快速学C/C++,有什么方法,这个问题,想必大家都已经心中有数了,打算深入了解这个行业的朋友,可以加下小编的C/C++学习群:666+295+498,邀请码(阿岐编程)不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2018最新的C/C++资料和0基础入门教程,欢迎初学和进阶中的小伙伴。

每天晚上20:00我都会开直播给大家mianfei分享C/C++学习知识和路线方法,群里会不定期更新最新的教程和学习方法(进群送2018C/C++学习教程),大家都是学习C/C++的,或是转行,或是大学生,还有工作中想提升自己能力的C/C++党,如果你是正在学习C/C++的小伙伴可以加入学习。最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。

要使用这些函数时只需要添加一个编译预处理命令#include即可,关于头文件的作用后面还会详细介绍

字符输出函数putchar()

一般格式:

putchar(表达式)

功能:函数功能是在屏幕上输出一个字符;表达式可以是字符或整型表达式,表达式为将要输出的字符本身或ASC||码,

因为ASC||码只有0~255,所以当表达式大于255时,系统会自动取256的余数,当然如果表达式不是整型值时系统会自动舍弃小数部分,

有趣的是,有些ASC||码是无法显示的,比如7表示为计算机扬声器响一声

字符输入函数getchar()

一般格式:

getchar()

功能:从标准输入设备(键盘)上输入一个字符(需要回车),当用户输入一串字符时(需要回车)只返回所输入的第一个字符,如果直接回车则getchar()的值是回车,函数getchar()的值是其获得的字符;下面的语句都是正确的

c=getchar();

c=getchar()+1;

putchar(getchar());

单独使用getchar()而不做其他处理,有使程序暂停的作用,待用户按下回车时继续,

字符输入函数getche()和getch()

一般格式:

getche()

getch()

这两个函数与getchar()大致相同,但有两点不同,一是,不需要回车,所以不会发生输入多个字符的情况,

二是,getche()输入时会回显屏幕但getch()不会

标准格式输出函数printf()

一般格式:

printf(格式控制字符串,输出值参数列表);

关于格式控制详细内容请百度

格式输出函数scanf()

一般格式:

scanf(格式控制字符串,变量地址列表)

变量

在c语言中,每一个变量和函数都有两个属性:数据类型(如整型、字符型)和数据的存储类别(静态存储和动态存储)

从变量的作用域(即从空间)角度来分,可以分为全局变量和局部变量

从变量值存在时间(即生存期)角度来分,可以分为静态存储方式和动态存储方式

静态存储方式是指在程序运行期间由系统分配固定的存储空间的方式,而动态存储方式是指在程序运行期间根据需要进行动态的分配存储空间的方式

关于存储类别具体包含4种,自动的(auto)、静态的(static)、寄存器的(register)、外部的(extern)

auto变量

函数局部变量如果不专门声明为static存储类别,都是动态随机分配存储空间的,数据存储在动态存储区中。

函数中的形参和在函数中定义的变量(包括复合语句定义的变量),都属此类,

在函数调用时系统会给这些变量随机分配内存,一旦调用结束就会自动释放这些存储空间,因此这类局部变量称为自动变量

关键字“auto”可以省略,不写则隐含确定为“自动存储类别”,它属于动态存储方式

static声明局部变量

有时希望函数的局部变量的值在函数调用结束后不消失而保留原值,

即其占用的存储单元不释放,在下一次调用时,该变量已有值,就是上一次调用结束时的值。

这时就应该指定该局部变量为“静态局部变量”,用关键字static进行声明。

静态局部变量属于静态存储类别,在静态存储区内分配存储单元,在程序整个运行期间都不释放

标识符分关键字,预定义标识符和用户标识符。

1)标识符命名原则

a,只能有字母,数字,下划线和美元($)组成。

b,不能以数字开头。

c,不能与关键字重名。

d,严格区分大小写。

2)标识符命名规范

a,驼峰命名法。(第一个单词首字母小写,其他单词首字母大写)。getName。

b,名称简练,望文知意

c,避免出现数字编号。name1,name2.

d,多个文件共同使用的全局变量或者函数名称加范围限定符。UI_name

3) 关键字就是C本身使用的,不能作他用的字。总共有32个。

数据类型关键字:void int char float double (5)

类型修饰符关键字:short long signed unsigned(4)

复杂类型关键字:struct enum union(3)

流程控制关键字:for break continue do while if else goto suitch case default return(12)

存储类型关键字:auto extern static regist ( 4)

其他关键字:const sizeof typedel volatile(4)

5 注释

对代码的解释性文字。

作用:方便程序员之间交流。

特点:不参与编译。

注释分类

1)单行分类(//注释内容)。只注释单行

2)多行分类(/* 注释内容*/)。注释多行,注释文字间可以换行。快捷键(command + ?)

6 数据类型

常用基本数据类型占用空间(64位机器为例)

char : 1个字节

int :4个字节

float:4个字节

double:8个字节

基本类型书写

整数

a,默认为10进制 ,10 ,20 .

b,以0开头为8进制,045,021.

c.,以0b开头为2进制,0b11101101。

d,以0x开头为16进制,0x21458adf。

从小白入门c语言,菜鸟小白入门C语言必学之C语言最基础的知识细节!相关推荐

  1. Python和C语言哪个更容易学,感觉学了C语言有点难,只学过C语言的大学生很迷茫?

    1.显然C语言更容易学一些,结构简单就不说了,关键字可能是所有的计算机语言中最少的.关键是非常成熟,各种书籍都非常容易找. 2.不过,更多的"学了C语言之后不知道可以做什么?",这 ...

  2. 大学生必学练习题 - Java 语言经典50例

    我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章,回复[资料],即可获得我精心整理的技术资料,电子书籍,一线大厂面试资料和优秀简历模板. 文章目 ...

  3. 833C语言程序设计与数据结构,2017年北方民族大学计算机技术833C语言程序设计与数据结构之C程序设计考研导师圈点必考题汇编...

    一.选择题 1. 以下叙述中正确的是( ) A. 程序设计的任务就是编写程序代码并上机调试 B. 程序设计的任务就是确定所用数据结构 C. 程序设计的任务就是确定所用算法 D. 以上三种说法都不完整 ...

  4. 833C语言程序设计与数据结构,2018年北方民族大学计算机技术833C语言程序设计与数据结构之C程序设计考研核心题库...

    一.选择题 1. 有以下程序 程序运行后的输出结果是( ). [答案]A [解析] 注释之间计算机不参与编译,所以a .b 值仍为0. 2. 若k 是int 类型变量,且有以下for 语句: 下面关于 ...

  5. 你应该如何学习一个未知的技术领域?- 菜鸟小白篇

    一.前言 2018年初开始从事线上课程的开发,陆续开发了几门课程,<人工智能产品经理最佳实践请添加链接描述><知识图谱实战开发完全剖析请添加链接描述>和<智能对话机器人实 ...

  6. 作为菜鸟,你应该如何学习知识图谱?- 菜鸟小白篇

    一.前言 2018年初开始从事线上课程的开发,陆续开发了几门课程,<人工智能产品经理最佳实践><知识图谱实战开发完全剖析>和<智能对话机器人实战开发完全剖析>,其中 ...

  7. Java程序员之从菜鸟到职场高手的必看...

    J2SE之入门引导            Java基础系列之初识JAVA                                            Java基础系列之Java语法     ...

  8. 在大学之中,大部分学生都学不好C语言,是C语言越来越难学了吗?

    应该准确来讲,是为什么这么多人学不会编程,C语言本身来讲有一定的难度,但毕竟不是最难的语言,所以学不好的主要还是自身的问题.作为用了十几年C语言的程序员在这尝试分析下为何这么多人学不好C语言? C语言 ...

  9. c语言输出数字漏斗图形_为什么你觉得C语言什么都不能做,学了没用?不可能的...

    对于大部分初学者,学习C语言的目的是希望做一名合格的程序员,开发出靠谱的软件来.但是学了C语言的基本语法后,发现只能开发"黑底白字"的DOS程序,完全没有漂亮的界面和生动的交互.于 ...

最新文章

  1. python编程基础之二十
  2. 【C++标准库】并发
  3. oppo 手机侧滑快捷菜单_关于oppo手机菜单键调出的方法,原来是这样的
  4. MTK A/B system说明及配置
  5. git简单使用(二)---远程仓库的建立与远程库的克隆
  6. 计算机网络物理层之物理层的基本概念
  7. Acrobat Pro DC 教程,如何使用文本和图片文件创建 PDF?
  8. 通过汉字查找五笔码和拼音
  9. cad放大_如何玩转CAD看图?1分钟,一款完全免费的高效软件,解决所有看图
  10. 爱快路由,通过域名分流解决QQ网吧特权不生效的问题
  11. 利用Python将PDF转化为图片的方法
  12. C语言中cvpoint后运行出错,c++ - 使用cvCreateSeq时出现未处理的异常 - 堆栈内存溢出...
  13. DFD数据流图的基本要素及易错点详细介绍
  14. ESP32 LVGL8.1 ——event 事件 (event 17)
  15. 未得冠军的运动员也有教练——Leo鉴书71
  16. Kruskal算法(克鲁斯卡尔)最小生成树
  17. HTTP 头部字段 Access-Control-Allow-Origin
  18. 场馆坪效这么低?关键在这两方面
  19. 移动web开发meta标签的使用
  20. 马蜂窝如何利用 APISIX 网关实现微服务架构升级

热门文章

  1. 机构推荐的2011年十大金股
  2. 推荐一款好用的手机思维导图app
  3. 注册表常用命令大全 通向程序的快捷途径
  4. DropDownList 绑定数据
  5. WebApi--------找到了与该请求匹配的多个操作问题解决
  6. RISC-V MCU 导盲手套
  7. android 5.1 色盲,5张顶级色盲检测图,图2只能看到一个数的,即便过了体检也很危险...
  8. MATLAB神经网络学习笔记之:对线性神经网络进行自适应训练
  9. 在ajax中拦截器的转发与重定向无效
  10. 超干干货:Linux 系统最强总结~