【C语言】从标准输入读取字符,所有非字母字符完全按照输入形式输出,字母字符在输出前加密

加密的方法是:

每个字母被修改成在字母表距其13个位置(前或者后)的字母。例如:A被修改成N,B被修改成O,Z被修改成M,以此类推。

#include<stdio.h>
#include<stdlib.h>

int main()
{
    int ch;
    while ((ch = getchar()) != EOF)
    {
        if ((ch >= ‘a‘ && ch <= ‘m‘)
            || (ch >= ‘A‘ && ch <= ‘M‘))
        {
            ch = ch + 13;
        }
        else if ((ch >= ‘n‘ && ch <= ‘z‘)
            || (ch >= ‘N‘ && ch <= ‘Z‘))
        {
            ch = ch - 13;
        }
        else
        {
            ;
        }
        /*printf("%c", ch);*/
        putchar(ch);
    }
    system("pause");
    return 0;
}
时间: 2024-12-22 04:18:56

【C语言】从标准输入读取字符,所有非字母字符完全按照输入形式输出,字母字符在输出前加密的相关文章

C语言:标准输入读取几行输入。每行输入都要打印到标准输出上,前面加上行号。行号不能有限制

#include<stdio.h> #include<stdlib.h> int main() {  char str;  int count=1;  int start=1;  while(1)  {    printf("input your line\n");   do   {    scanf("%c",&str);    if(start==1)    {     printf("%d.",count);

day20 java 语言中的读取写入数据(一)

day20  java 语言中的读取写入数据(一) 一.io概述 io数据流的读写功能,在实际的生活中也很常见,比如文件的上传.下载,日志的自动更新等都与io读写密切相关.io又被分为了读取数据和写入数据两个大的功能.下面就来看看读取数据的几种类. 二.读取数据的几种方式 读取数据被分为了字节流读取数据,和字符流读取数据两种. (一):字符输入流: 1.fileReader类.是字符流读取数据 2.BufferedReader类.带有缓冲流读取数据 (二):字节输入流: 1.FileInputS

day21 java 语言中的读取写入数据(二)

day21  java 语言中的读取写入数据(二) 一.概述: 使用IO流写文件,就体现的是下载的功能.所以说很有必要单独说一下. 二.写入功能:(下载) 写入功能同样也是被分隔为了字符流写入和字节流写入两个方式. (一):字符流写入数据 1.FileWriter类. 2.bufferedwriter类.带缓冲流 (二):字节流写入数据 1.FileOutputStream类. 2.bufferoutputstream类.带有缓冲流 三.具体实例     (一):字符流写入数据 //io数据流输

C语言——常用标准输入输出函数 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字符串拷贝函数 strcpy(), strncpy(), strchr(), strstr()函数用法特点

1 首先介绍几个常用到的转义符 (1)     换行符"\n", ASCII值为10: (2)     回车符"\r", ASCII值为13: (3)     水平制表符"\t", ASCII值为 9: (4)     空字符"\0" ,ASCII值为0: (5)     空:NULL (即为0): (6)     空格键space, ASCII值为32: 2 常用输入输出函数 scanf() , 从缓冲区读入数据,以空格,制

JAVA BufferedReader 类从标准输入读取数据

1,建立输入流: BufferedReader localReader = new BufferedReader( new InputStreamReader(System.in)); System.in 表示标准输入,一般指键盘. 建立输入流,从标准输入读取数据到缓冲区中. 当在标准输入中输入一行字符串时,按回车之后,这行数据就会被读取到缓冲区中. 比如: abc  \r\n(表示按下回车键) 那么msg就会赋值为 abc String msg = null; while ((msg = lo

编写一个程序,从标准输入读取几行输入。每行输入都要打印到标准输出上,前面加上行号。

编写一个程序,从标准输入读取几行输入.每行输入都要打印到标准输出上,前面加上行号. 在编写这个程序的时候要使这个程序能够处理的输入行的长度没有限制. #include <stdio.h> #include <stdlib.h> int main() { char ch = '0'; int n = 1; int flag = 1; while (1) { printf("please input the line: "); do { scanf("%c

[笔记]Go语言在Linux环境下输出彩色字符

Go语言要打印彩色字符与Linux终端输出彩色字符类似,以黑色背景高亮绿色字体为例: fmt.Printf("\n %c[1;40;32m%s%c[0m\n\n", 0x1B, "testPrintColor", 0x1B) 其中0x1B是标记,[开始定义颜色,1代表高亮,40代表黑色背景,32代表绿色前景,0代表恢复默认颜色.显示效果为: 下面代码遍历全部显示效果. package main import ( "fmt" ) func main

java基础---&gt;文件---&gt;从标准输入读取字符串作为文件名----&gt;解决“文件名乱码”问题

概述:程序中有时会需要从标准输入读取字符串作为文件的名字,其具体实现方法有许多种.我第一次尝试编写这方面的程序时遇到了"乱码问题",后来使用了新的写法解决了乱码问题. /*原码,使用这种方法编写的代码会出现"乱码问题" 乱码原因分析:从标准输入读取的数据先被存放至byte[]中,之后又将byte数组转成String,这个过程中就会出现编码不一致的问题 如标准输入"file1",但是最终fileName=buffer.toString()的结果却是

c语言:从键盘输入BOY三个字符,然后把它们输出到屏幕。

从键盘输入BOY三个字符,然后把它们输出到屏幕. 程序: #include<stdio.h> int main() { char a,b,c; printf("请输入字符:"); a=getchar();//注意getchar一次只能读入1个字符 b=getchar(); c=getchar(); putchar(a); putchar(b); putchar(c); putchar('\n'); return 0; } 结果: 请输入字符:BOY BOY 请按任意键继续.

【c语言】译密码。将字母变成其后的第4个字母,非字母不变

// 译密码.将字母变成其后的第4个字母,非字母不变 #include <stdio.h> int main() { char c; c = getchar(); while( c != '\n' ) { if( ( c >= 'a' && c <= 'z' ) || ( c >= 'A' && c <= 'Z' ) ) { if( ( c >= 'w' && c <= 'z' ) || ( c >= '