字符输入和输出的学习

第四章 顺序程序设计的学习

一、和其他高级语言一样,C语言的语句用来向计算机系统发出操作指令;一个语句经编译后产生若干条机器指令;一个实际的程序应当包含若干语句。

C语言语句有以下几种:

(1)控制语句;用于完成一定的控制功能;

条件语句if ;循环语句 for  while ;等;

(2)函数调用语句;函数调用语句有一个函数和一个字符串构成;

      Printf(“hello world!”)

(3)空语句;只有一个分号,也不执行任何动作;

(4)复合语句;用{ }来括起来成为复合语句(也叫分程序);

二、输出和输入概念在C语言中的实现;

   输入和输出在计算机中的参考点:ram(内存);

 C语言的本身不提供输入和输出语句;输入和输出操作是由C语言函数库中的函数实现的;

首先,要调用输入和输出,必须在头文件中加入#include<stdio.h>这样才能在程序中加入输入和输出的调用;

  1. 单字符的输入和输出调用;

putchar 输出单个字符;(作用是向终端输出一个字符);

int putchar (int c) 得到的返回值为临时变量(右值);

如果要输出多个字符,可以多次调用 put char 函数;

getchar  字符输入函数;

int getchar(viod)  无需传参即可完成(即括号内可无内容);

注:输入的字符为int 型;

缓冲区的介绍:

为了解决CPU内存占用问题,可以先把输入的数据装入缓冲区,之后再经由CPU处理,由于存入的数据以队列形式输入,在这里遵循“FIFO”的形式,即先入先出的原则;数据被全部取完结束时,缓冲区就会被收回;

  1. 格式的输入与输出

printf 函数(格式输出函数)作用是向终端输出若干个任意类型的数据;

printf(“%d,%c\n”,i,c)

括号内包括转换控制字符串和输出列表两部分;

%d形式的内容一般被称为占位符,作用是将输出的数据转换为指定的格式输出;

%d会顺次替代后面的输出表列中的内容,如果表列中的内容多于%d的个数则会出现参数的丢失;如果%d的个数多于表列中的参数则会在多余的位置产生随机数;

下面介绍一些格式字符的类型及用法

%(o , u, x, X)使用时无负号,用来检查内存中的字节;

%(d , i )使用时有负号,用来判断正负;在d前加数字可以限制整型的输出宽度,小于原本的输出宽度则会输出原本数据;

%(e , E)用于浮点数并产生科学计数法形式;(123.456—1.234560e+02形成6位有效数字);

%(f ,F)用于浮点数并产生科学计数法形式,产生6位小数;

% m.nf m表示小数点前的位数包括小数点,n为小数点后的位数,m如果小于实际所需的则会产生原始数据,故m一般会省略;

%(g ,G)浮点型参数会被转化为f,e型

%(c)putchar 用于打印ASC2中的数值;

%(p)用于打印万能指针;

%%用于表示百分数

在字母前加入l还可以增加输出数据的字节;

  1. scanf函数

格式输入函数(格式控制,地址列表)

地址列表是由若干个地址组成的列表,可以是变量的地址,或者字符串的首地址;

scanf(“%d”,&i);

printf(“i = %d\n”,i);

注意:取地址符号&不可省略;

(%d之后不能加入\n来换行);

Scanf无法理解地址中的位数有多少,默认为4个字节;

解决方法:scanf(“%lf”,&f)

无法在被调用函数中去修改主函数的内容;被调用函数中的参数无法影响主调函数的值;

指针传参的含义:实现在被调用的函数中去寻找修改主调函数;

总结

每个输入输出函数在引用时都要遵循输入和输出值的形式,否则在C语言的编译和运行过程中会出现错误;深刻理解缓冲区的意义,数据在其中遵循先入先出原则;

主函数中的数值不会被调用函数影响,因为两者被存放在两个存储区域,但是指针传参可以被用来改变主函数的值。

  • 19
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值