c++中如何输出字符串的ASCII码

2024-12-30 15:35:58
推荐回答(5个)
回答1:

#include
#include

void asc2bin(int ch)
{
int i, a[8];

for (i = 0; i < 8; ++i)
{
a[8 - i - 1] = ch % 2;
ch /= 2;
}

for (i = 0; i < 8; ++i)
{
cout << a[i];

if ((i + 1) % 4 == 0)
cout << ' ';
}
}

void main()
{
char str[100];
int i = 0;

cout << "Please input a string: " << endl;
cin.getline(str, 100);

while (str[i])
{
asc2bin(str[i++]);
cout << endl;
}

system("PAUSE");
}

回答2:

#include

int main()
{
int a;
int i;
int n;
char str[20];
char* str1=str;
printf("请输入一个字符串:\n");
gets(str);
while(*str1!='\0')
{
a=*str1;
n=0x80;
for(i=0;i<8;i++)
{
printf("%d",a&n?1:0);
n>>=1;
}
printf("\n");
str1++;
}
}

C++
#include

int main()
{
int a;
int i;
int n;
char str[20];
char* str1=str;
cout<<"请输入一个字符串:"< cin>>str;
while(*str1!='\0')
{
a=*str1;
n=0x80;
for(i=0;i<8;i++)
{
cout<<(a&n?1:0);
n>>=1;
}
cout< str1++;
}
}

回答3:

#include
#include
using namespace std;
int Change(int s) //把十进制转为二进制
{
int t = 0;
int count = 0;
while(s != 0)
{
int tmp = s % 2;
t += tmp * pow(10, count++);
s = s / 2;
}
return t;
}
int main(int argc, char* argv[])
{
char s1[100];
int s2[100];
cout<<"请输入字符串"< cin>>s1;
int i=0;
while(s1[i]!='\0') //把字符转为ASCII码
{
s2[i]=s1[i];
i++;
}

int k=0;
do
{
cout< k++;
}while(k
return 0;
}

回答4:

#include
using namespace std;
int main()
{

char h[1000];
char a[1000][1000];
cout<<"请输入你要转换为ASCII码的字符串:"<cin>>h;

for(int i=0;i{
int b=int(h[i]);
itoa(b,a[i],2);
cout<}
}

回答5:

这个简单. 等着.

#include
using namespace std;

void tentotwo(char c)
{
if(c/2 != 0)
tentotwo(c/2);
else
printf("%d",c/2);
printf("%d",c%2);
}

int main()
{
char s[100];
int i=0;
gets(s);

while(s[i]!='\0')
{
tentotwo(s[i]);
putchar('\n');
i++;
}
return 0;
}