怎么连续输出三个输入字符对应的ascll码和倒序输出原来的三个字符(两行之间有换行符
先输入就好,用%d输出
#include <iostream>
using namespace std;
int main()
{
char a,b,c;
cin>>a>>b>>c;
cout<<(int)a<<" "<<(int)b<<" "<<(int)c<<endl;
cout<<c<<" "<<b<<" "<<a<<endl;
}
不知道你这个问题是否已经解决, 如果还没有解决的话:#include<iostream>
using namespace std;
struct MyStruct
{
char z;
int num;
};
int isexist(char a,MyStruct str[100]){
int flag=0;
for(int i=0;i<100;i++){
if(str[i].z==a) flag=i;
}
return flag;
}
int main(){
char str[100];
cin>>str;
int index=0;
MyStruct s[100];
for(int i=0;i<100;i++){
s[i].num=0;
}
for(int i=0;i<100;i++){
if(str[i]!='\0'){
if(isexist(str[i],s)==0) { s[index].z=str[i];s[index].num=1;index++;}
else if(isexist(str[i],s)>0&&s[isexist(str[i],s)].num>0){
s[isexist(str[i],s)].num++;
}
}
}
MyStruct temp,temp1;
for(int i=0;i<100;i++){//排序
for(int j=i+1;j<100;j++){
if(s[j].num>s[i].num&&s[i].num>0&&s[j].num>0) {temp=s[i];s[i]=s[j];s[j]=temp;}
if(s[j].num==s[i].num&&s[j].z<s[i].z&&s[i].num>0&&s[j].num>0){
temp1=s[i];s[i]=s[j];s[j]=temp1;}
}
}
for(int i=0;i<100;i++){//输出
if(s[i].num>0){
cout<<s[i].z<<':'<<s[i].num<<" ";
}
}
system("pause");
return 0;
}