第二周上机实验
来源:互联网 发布:.net调用前台js函数 编辑:程序博客网 时间:2024/05/01 21:42
#include <iostream>
#include "string.h"
using namespace std;
int main()
{
char str[200];
cin.get(str, 100, '\n');
for(int i = 0, j = 0; str[i] != '\0'; i++)
{
j++;
} //统计输入字符的个数
do
{
if(str[0] == ' ')
{
for( int k = 0; k <=j; k++)
{
str[k] = str[k + 1];
}
}
}while(str[0] == ' '); //去除行首的空格
for(int n = 0; n <= j; n++)
{
do
{
if(str[n] == ' ' && str[n + 1] == ' ')
{
for(int m = n; m <= j; m++)
{
str[m + 1] = str[m + 2];
}
}
}while(str[n] == ' ' && str[n + 1] == ' ');
} //去除连续的多个空格,仅保留一个空格
for(int p = 0; p <= j; p++)
{
if((str[p] == ' ' && str[p + 1] == ',') || (str[p] == ' ' && str[p + 1] == '.') || (str[p] == ' ' && str[p + 1] == ';') || (str[p] == ' ' && str[p + 1] == '?') || (str[p] == ' ' && str[p + 1] == '!'))
{
for(int q = p; q <= j; q++)
{
str[q] = str[q + 1];
}
}
} //保重标点符号紧跟单词的最后一个字母
for(int b = 0; b <= j; b++)
{
if((str[b] == ',' && str[b + 1] != ' ') || (str[b] == '.' && str[b + 1] != ' ') || (str[b] == ';' && str[b + 1] != ' ') || (str[b] == '?' && str[b + 1] != ' ') || (str[b] == '!' && str[b + 1] != ' '))
{
for(int c = b;c < j; j--)
{
str[j + 1] = str[j];
}
str[b + 1] = ' ';
}
} //保证标点符号后面有一个空格
cout << str << endl;
return 0;
}
- 第二周上机实验
- 第二周C#上机实验(一)内容的输出
- 第二周JAVA上机实验(三)猜数游戏
- c++第五次上机实验第二题
- 第二周上机任务
- 第二周C#上机实验(二)求取字母的ASCII值
- 第二周JAVA上机实验(一)输出26个希腊字母
- 第二周JAVA上机实验(二)判断这个数是几位数、是否是回文数
- 我的第一次上机实验1-2 第二个项目
- 第二周上机任务 1
- 第二周上机作业2
- 第二周上机任务1
- 第二周 --上机发文章
- 第二周实验报告
- 第二周实验一
- 第二周实验二
- 第二周实验四
- 第二周实验报告
- 数据库连接池
- Ubuntu下Memcache的安装与基本使用
- ---matlab应用小笔记
- asp.net的OCR识别
- springmvc上传文件配置方法
- 第二周上机实验
- java解析XML(DOM方式)
- 2012年 上半年 第三周 C++程序设计 (四)
- 第二周实验报告1
- mysql客户端链接服务端
- Installing PDO_MYSQL
- 仿百度,豆瓣读书文库阅读器
- phpmyadmin远程连接mysql的方法(吐血版)
- CSS滤镜—渐变色的设置