您的位置:首页 > 编程语言 > C语言/C++

第二周《C语言及程序设计》实践项目36 用循环处理文字

2016-08-20 21:15 323 查看
【项目2:转着圈加密】

/*
* Copyright (c) 2016, CSDN学院
* All rights reserved.
* 文件名称:【项目2:转着圈加密】.cpp
* 作    者:张易安
* 完成日期:2016年 8 月 20 日
* 版 本 号:v1.0
*
* 问题描述:为使电文保密,往往按一定规律将电文转换成密码,收报人再按约定的规律将其译回原文。
* 加密办法,如图所示,每一个字母的密文是其后第4个字母,
* 若超出了字母的范围,将A看作为Z的下一个字母,将a看作是z的下一个字线,依次顺延
*/
#include<stdio.h>
int main()
{
char ch;
while((ch=getchar())!='\n')
{
if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='z'))
{
ch=ch+4;
if((ch>'Z'&&ch<'Z'+4)||(ch>'z'))
ch=ch-26;
}
putchar(ch);

}
return 0;
}


运行结果



心得

越来越不好做了。。。

【项目3:消除多余的空格】

/*
* Copyright (c) 2016, CSDN学院
* All rights reserved.
* 文件名称:【项目3:消除多余的空格】.cpp
* 作    者:张易安
* 完成日期:2016年 8 月 20 日
* 版 本 号:v1.0
*
* 问题描述:从键盘上的输入一句话,直到按回车键为止,这些字符被原样输出,但若有连续的一个以上的空格时只输出一个空格。
*/
#include<stdio.h>
int main()
{
char ch,a=0;
while((ch=getchar())!='\n')
{
if(ch!=' ')
{
a=0;
putchar(ch);
}
else if(a==0)
{
putchar(ch);
a=1;
}
}
}


运行结果



【项目4:血型统计】

/*
* Copyright (c) 2016, CSDN学院
* All rights reserved.
* 文件名称:【项目4:血型统计】.cpp
* 作    者:张易安
* 完成日期:2016年 8 月 20 日
* 版 本 号:v1.0
*
* 问题描述:黑猫警长在犯罪现场发现了一些血迹,现已经委托检验机构确定了血型,需要统计各种血型的样本数目。
* 输入:血型序列(A/B/O/C,C代表AB型血,输入以X结束)
* 输出:各种血型的数量
*/
#include<stdio.h>
int main()
{
int a,b,c,d;
char blood;
scanf("%c",&blood);
while(blood!='X')
{
switch(blood)
{
case 'A':
a++;
break;
case 'B':
b++;
break;
case 'AB':
c++;
break;
case 'O':
d++;
break;

}
scanf("%c",&blood);
}
printf("A:%d B:%d AB:%d O:%d",a,b,c,d);

return 0;
}
运行结果



心得

没有想到用case,很巧妙

【项目5:有多少符号】

。。。算了,自己也没有做出来,没有必要再贴了。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: