华北电力大学C++在线测评系统题目与答案。所有程序亲测完美运行,精心排版,适用于C++课程期末复习。
}
第4题:
编写程序,输入字符串(包含多个‘*’),将所有前导‘*’全部移到字符串尾部。 样例输入:*******A*BC*DEF*G**** 样例输出:A*BC*DEF*G*********** #include <iostream.h> #include <stdio.h> int main()
{char a[50],b[50]; gets(a);
int i,j=0,k=0,l=0,c=0; for(i=0;;i++) {if(a[i]!='\0') j++; else break;}
for(i=0;i<j;i++) {if(a[i]=='*') {l++;}
else break;} for(i=j-1;i>=0;i--) {if(a[i]=='*') k++;
else break;} for(c=0;c<l;c++) b[c]='*';
for(i=l;i<j-k;i++) {if(a[i]!='*')
{b[c]=a[i]; c++; }} for(i=0;i<k;i++) {b[c]='*'; c++;} for(i=0;i<c;i++) cout<<b[i]; return 0;}
第5题:
编写程序,输入两个字符串(不包含空格)和整数k,在第一个字符串的第k个字符后插入第二个字符串,如果第一个字符串长度不足k,则将第二个字符串连接到第一个字符串后。输入分2行:第一行为两个字符串(以空格分隔),第二行为整数k。 样例输入: BeiJing 123
3
样例输出:Bei123Jing 样例输入: China NCEPU 8
样例输出:ChinaNCEPU #include <iostream.h> #include <string.h> int main()
{char a[50],b[50],c[50]; int j=0,k,n,m ;
cin>>a;cin>>b;cin>>k; n=strlen(a);m=k; if(k>=n) {k=n;
for(j=0;b[j]!='\0';j++) {a[k]=b[j];k++;} a[k]='\0';} else
{for(j=0;a[k]!='\0';j++) {c[j]=a[k];k++;}
for(j=0;b[j]!='\0';j++) {a[m]=b[j];m++;} for(j=0;c[j]!='\0';j++) {a[m]=c[j];m++;} a[m]='\0';} cout<<a;}
第6题:
编写程序,输入字符串(不包含空格),删除字符串中ASCII码值能被3整除的字符,将剩余字符按从小到大排序后输出。 样例输入:Chinancpeu 样例输出:Caehnnp #include<iostream.h> #include<string.h> int main()
{char str[100];int n,i,j,t; cin>>str; n=strlen(str); for(j=0;j<n;j++) {for(i=0;i<n-1-j;i++) if(str[i]>str[i+1]) {t=str[i];
str[i]=str[i+1];