题目描述有 n 个人围成一圈,顺序从 1 开始排号。从第 1 个人开始报数(从 1 到 3 报数),凡报到 3 的人退出圈子,问最后留下的是原来第几号的那位。
输入只有一个正整数 n,保证 n 不超过 1000。
输出输出最后留下的人的原始编号。请注意行尾输出换行。
样例输入110
样例输出14
提示12345678910111213141516171819202122#include<iostream>using namespace std;int main(){ int n,m=0,i=1,k=0,j=0; cin>>n; int a[n]; for(i=0;i<n;i++) a[i]=i+1; while(m<n-1){ if(a[i]!=0) k++; if(k==3) { a[i]=0; k=0; m++; } i++; if(i==n+1) i=1; } for(i=1;i<=n;i++) if(a[i]!=0) cout<<a[i]&l ...
题目描述输入 3 个字符串,按从小到大的顺序输出。要求使用指针的方法进行处理。
输入3 行,每行一个用字符串。保证每个字符串的长度不超过 20。
输出按从小到大的顺序输出这 3 个字符串,每个字符串一行。请注意行尾输出换行。
样例输入123ChinaCLOCKdeal
样例输出123CLOCKChinadeal
提示1234567891011121314151617181920#include<iostream>using namespace std;void swap(string *s1,string *s2) { string x; x=*s1; *s1=*s2; *s2=x;}int main() { string s1,s2,s3; cin>>s1>>s2>>s3; string *a,*b,*c; a=&s1; b=&s2; c=&s3; if(s1>s2) swap(a,b); if(s1& ...
题目描述编写一个函数,输入一行字符,将此字符串中最长的单词输出。
输入一行字符,只包含英文字符和空格。保证字符串的长度不超过 100。
输出输出读入的最长单词。请注意行尾输出换行。
样例输入1This is not a program
样例输出1program
提示12345678910111213141516171819202122#include<iostream>#include<cstring>using namespace std;void longword(char s[]){ char s1[100],s2[100]; s1[0]='\0'; for(int i=0;i<strlen(s);i++){ int count=0; while(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z') s2[count++]=s[i+ ...
题目描述计算非负整数 m 到 n(包括 m 和 n )之间的所有奇数的和,其中,m 不大于 n,且 n 不大于 300。例如 m=3, n=12, 其和则为:3+5+7+9+11=35。
输入两个数 m 和 n,两个数以一个空格分开,其中 0 <= m <= n <= 300 。
输出输出一行,包含一个整数,表示 m 到 n(包括 m 和 n )之间的所有奇数的和。
样例输入17 15
样例输出155
提示1234567891011#include<iostream>using namespace std;int main(){ int m,n,sum(0); cin>>m>>n; for(int i=m;i<=n;i++) if(i%2==1) sum+=i; cout<<sum<<endl; return 0;}
题目描述输入 n 个整数,使前面的 n-m 个数顺序向后移动 m 个位置,最后的 m 个数变成最前面的 m 个数。通过函数实现以上的功能。
输入第一行包含两个用空格隔开的整数 n 和 m,保证 n>m 且 n 不超过 50。第二行包含 n 个用空格隔开的整数。
输出输出进行题目描述操作之后的 n 个整数,每个整数之后输出一个空格。请注意行尾输出换行。
样例输入126 21 2 3 4 5 6
样例输出15 6 1 2 3 4
提示123456789101112131415161718192021#include<iostream>using namespace std;int n,m;void reverse(int num[]){ int nums[n]; for(int i=0;i<n-m;i++) nums[i+m]=num[i]; for(int i=0;i<m;i++) nums[i]=num[n-m+i]; for(int i=0;i<n;i++) cout<<nums[i]<<' & ...
题目描述在 main 函数中输入 10 个不等长的字符串,另外写一个函数对它们按字典序从小到大排序。并在 main 函数中输出这 10 个已经排好序的字符串。
输入共有 10 行,每行一个字符串。输入保证每行的字符串长度不超过 100 个字符。请注意字符串中有可能包含空格。
输出与输入格式相同,每行输出一个排好序之后的字符串。请注意行尾输出换行。
样例输入12345678910String DDDString Eestring AAString CCCCCstring GGstring jJjString IiiIIIString hstring fFfString BBbb
样例输出12345678910String BBbbString CCCCCString DDDString EeString IiiIIIString hstring AAstring GGstring fFfstring jJj
提示1234567891011121314151617181920212223#include<iostream>using namespace std;void s ...
题目描述写一个函数,实现两个字符串的比较过程。即自己写一个 strcmp 函数,函数的原型为:int strcmp(char *p1, char *p2)。设 p1 指向字符串 s1,p2 指向字符串 s2。要求当 s1=s2 时,返回值为 0;若 s1≠s2,返回它们二者第一个不同字符的 ASCII 码差值(例如”BOY”与”BAD”,第二个字母不同,’O’与’A’之差为 79-65=14)。如果 s1>s2,则输出正值;如果 s1<s2,则输出负值。
输入有两行,每行有一个不包含空格的字符串,即参与比较的两个字符串。保证每个字符串的长度都不超过 200。
输出只有一个整数,即 strcmp 比较两个字符串的返回值。请注意行尾输出换行。
样例输入12ThisisLarger.ThisissMALLER.
样例输出1-39
提示1234567891011121314#include<iostream>using namespace std;int strcmp(char *p1,char *p2){ int a,b; for(; ...