1•输入一个字符串,请按长度为8拆分每个输入字符串并进行输出;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:
连续输入字符串(每个字符串长度小于等于100)
输出描述:
依次输出所有分割后的长度为8的新字符串
#include <iostream>
#include <string.h>
using namespace std;
int main() {
string str;
getline(cin,str);
int i;
int len = str.length();
if(len == 0)
{
cout << str << endl;
}
else
{
while(len % 8 !=0){
str[len] = '0';
len++;
}
}
for(int i = 0;i <len/8;i++)
{
for(int j = 0;j < 8;j++)
{
cout << str[i*8+j];
}
cout << endl;
}
return 0;
}
// 64 位输出请用 printf("%lld")
2.明明生成了𝑁N个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。
数据范围: 1≤𝑛≤1000 1≤n≤1000 ,输入的数字大小满足 1≤𝑣𝑎𝑙≤500 1≤val≤500
输入描述:
第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数,代表明明生成的随机数。 具体格式可以参考下面的"示例"。
输出描述:
输出多行,表示输入数据处理后的结果
#include <iostream>
#include <time.h>
using namespace std;
int main() {
int a,b;
while(cin >> a){
int c[1001] = {0};
while(a--)
{
cin >> b;
c[b] = 1;
}
for(int i = 0;i < 1001;i++)
{
if(c[i])
{
cout << i << endl;
}
}
}
return 0;
}
// 64 位输出请用 printf("%lld")
3.写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)
数据范围: 1≤𝑛≤1000 1≤n≤1000
输入描述:
第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。
输出描述:
输出输入字符串中含有该字符的个数。(不区分大小写字母)
#include <iostream>
#include <map>
#include <cctype>
using namespace std;
int main() {
map<char,int>icmp;
char c ;
while(c = getchar())
{
if(c == '\n')
{
break;
}
else{
++icmp[c];
}
}
cin >> c;
if(islower(c))
{
cout << icmp[c] + icmp[c - 32] << endl;
}
else if(isupper(c))
{
cout << icmp[c] + icmp[c + 32] << endl;
}
else{
cout << icmp[c];
}
return 0;
}
// 64 位输出请用 printf("%lld")
4.计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
输入描述:
输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。
#include <cstddef>
#include <iostream>
#include <string>
using namespace std;
int main() {
string c;
while(getline(cin,c))
{
int n =0;
int flag = 1;
for(int i = c.length()-1;i > 0;i++){
if(flag && c[i] != ' ')
{
continue;
}
else if(c[i] != ' '){
flag = 0;
++n;
}
else
{
break;
}
}
cout << n << endl;
}
return 0;
}
// 64 位输出请用 printf("%lld")