C语言程序设计入门16——初识字符输入输出3:简单字符加密
要想基于之前学习过的 C 语言知识实现文本流打印输出的功能,可以考虑使用一个循环结构,通过重复读取一个字符、打印一个字符的过程来实现,如图给出了这个思路的一个粗略流程图实现。
接下来,就是要看看是否可以使用已有的知识将图1中的流程编写成代码。从学习过的 C 语言知识来看,可以使用getchar
和putchar
函数实现图1中“读入一个字符”和“打印刚刚读入的字符”这两个步骤。流程图中“还有字符需要读入”这个步骤要怎么判断呢。既然文本流包含的字符个数和行数不确定,就意味着不能使用一个表示字符个数的常量,或者换行符作为文本流结束的判断依据。
C 语言定义了一个符号常量EOF
( End Of File 的缩写)可以作为文本流的结束标志。
EOF
是 C 语言在头文件 <stdio.h> 中定义的一个特殊值;- 当输入结束时,
getchar
函数返回特殊值EOF
作为结束符。
这样就需要对图1进行改进细化,从而得到最终的算法设计流程图。
设计成c语言程序即:
#include<stdio.h>
main(){
int c;
c = getchar();
while(c != EOF) //当c不是结束符时,进入循环
{
putchar(c);
c = getchar();
}
}
利用 C 语言中赋值表达式的值是左操作数(即赋值号左侧变量)的值的规定,可以将上述代码进行精炼:
#include<stdio.h>
main(){
int c;
while((c = getchar()) != EOF) //先将读取的字符赋给变量c,再将c与EOF比较
putchar(c);
}
任务:
对键盘输入的一段字符进行简单加密变换后输出。
要求:
获取键盘输入的一段字符,将每个字符依次变换成其在 ASCII 码表中后面第5个字符后,再顺序输出变换后的字符(不考虑变换后超出 ASCII 码编码范围的情况)。
测试输入:
qwert
预期输出:
v|jwy
参考:
#include <stdio.h>
#include <stdlib.h>
main()
{char a;while((a = getchar())!= EOF)putchar(a+5);return 0;
}
C语言程序设计入门16——初识字符输入输出3:简单字符加密相关推荐
- C语言程序设计入门08——初识格式化输出1:格式化输出PI值
格式化输出函数 printf() 作为 C 程序的标准格式化输出函数,printf()的函数声明包含在头文件 <stdio.h> 中,函数的一般形式为: printf ( <待打印 ...
- C语言程序设计入门11——初识格式化输入1:求圆面积
格式化输入函数 scanf 使用方法: 作为 C 程序的格式化输入库函数 ,scanf()的函数声明包含在头文件 <stdio.h> 中,函数的一般形式为: scanf(<格式说明字 ...
- C语言程序设计入门12——初识格式化输入2:求组合图形面积
任务: 计算组合图形面积. 要求: 计算一个由长方形和半圆扇形组成的图形面积,图形如下所示. 格式要求 : 长方形的长和宽均为单精度浮点数 , 其值由控制台输入 ( 先输入长后输入宽 ),输入的两变量 ...
- C语言程序设计入门教程
C语言程序设计入门教程 目录 语言分类 C语言特点 最简单的C语言程序 注释方式 C语言程序的结构 程序设计的任务阶段 选择结构程序设计 关系运行算符 逻辑运算符 switch语句 条件运算符 数据类 ...
- 中国大学MOOC C语言程序设计入门 第8周编程练习第二题 GPS数据处理
中国大学MOOC C语言程序设计入门 第8周编程练习第二题 GPS数据处理 题目内容 解题思路 这个题的题目真的是我学习C语言以来见过的最长的题目了,很多人的第一感觉可能是无从下手,所以让我们先来整理 ...
- C语言程序设计入门之抽象编程
C语言程序设计入门之抽象编程 前言 1. 程序入门抽象:变量和过程抽象 2.程序结构抽象:顺序.选择.循环 3.程序进阶抽象:问题(算法)抽象 4.软件工程抽象:函数(模块或问题分解)抽象 5.面向对 ...
- 明解C语言(入门)——初识C语言
明解C语言(入门)--初识C语言 文章目录 明解C语言(入门)--初识C语言 一.显示计算结果 二.变量 三.输入和显示 一.显示计算结果 1.通过字符序列创建出的程序称为源程序,用来保存源程序的文件 ...
- C语言初中入门,[初中教育]C语言程序设计入门篇.ppt
[初中教育]C语言程序设计入门篇 单 词 main 主函数 int 整型 float 浮点型 char 字符型 printf 输出函数 scanf 输入函数 if 如果 else 否则 for whi ...
- C语言程序设计入门学习六步曲,六步带你入门C语言
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理 ...
最新文章
- projecteuler_problem10
- 每个程序员都必须知道的 8 种数据结构
- Android中WIFI开发总结(一)
- 多路复用select和epoll的区别(转)
- 传统网站性能优化的三种手段
- 从零开始学python数据分析-从零开始学Python数据分析与挖掘 PDF 下载
- Mybatis通用Mapper
- SAP C4C里嵌入SAP Analytics Cloud的案例
- Jupyter Notebook 入门指南
- div超出不换行_div+CSS设置一行内文字超过宽度不换行且不显示
- 自动设置图片的序号_编写学位论文时如何给表格和图片自动编号
- JavaGC(1)—深入浅出Java垃圾回收机制
- css 文本两端对齐终极解决方案--一丝冰凉
- ae导出json_AE脚本导出json格式的Web动画工具 Bodymovin v5.7.0 + 使用教程【资源分享1171】...
- 最大后验估计_极大似然估计 V.S. 贝叶斯估计
- oracle11g教程视频教程,最新oracle11g DBA 开发和应用数据库视频教程_IT教程网
- SpringCloud入门教程(全集)
- 海康相机IP搜索协议研究
- 无法读源文件或磁盘_磁盘阵列RAID1+0和RAID0+1的区别
- python项目源码 日程管理_怎么用python写作息时间安排呢?