(1)编写一个C语言程序,包含字符串值"Hello World"。程序将字符串中每个字符与0进行异或运算并显示结果,
(1)编写一个C语言程序,包含字符串值"HelloWorld"。程序将字符串中每个字符与0进行异或运算并显示结果,将原字符串中每个字符与1进行异或运算并显示结果,能否看到...
(1)编写一个C语言程序,包含字符串值"Hello World"。程序将字符串中每个字符与0进行异或运算并显示结果,将原字符串中每个字符与1进行异或运算并显示结果,能否看到什么特殊之处?
(2)编写一个C语言程序,包含字符串"Hello World"。程序将每个字符串中每个字符与127进行与、或和异或运算并显示结果。看看结果有何不同?
15分钟内解答,追加150分 展开
(2)编写一个C语言程序,包含字符串"Hello World"。程序将每个字符串中每个字符与127进行与、或和异或运算并显示结果。看看结果有何不同?
15分钟内解答,追加150分 展开
2011-02-16 · 知道合伙人软件行家
babytaomail
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:429
获赞数:1130
某公司嵌入式开发工程师; 熟悉VC++/C/MFC,Linux驱动,STM32,FPGA,Allegro/Pads及硬件电路设计
向TA提问 私信TA
关注
展开全部
第一题:
#include "stdio.h"
void main()
{
char String[13]="Hello World";
char *pStr=String;
printf("与0异或:");
while(*pStr != '\0')
{
putchar((*pStr)^0);
++pStr;
}
printf("\n与1异或:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)^1);
++pStr;
}
}
第二题:
#include "stdio.h"
void main()
{
char String[13]="Hello World";
char *pStr=String;
printf("与127异或:");
while(*pStr != '\0')
{
putchar((*pStr)^127);
++pStr;
}
printf("\n与127相与:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)&127);
++pStr;
}
printf("\n与127相或:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)|127);
++pStr;
}
}
#include "stdio.h"
void main()
{
char String[13]="Hello World";
char *pStr=String;
printf("与0异或:");
while(*pStr != '\0')
{
putchar((*pStr)^0);
++pStr;
}
printf("\n与1异或:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)^1);
++pStr;
}
}
第二题:
#include "stdio.h"
void main()
{
char String[13]="Hello World";
char *pStr=String;
printf("与127异或:");
while(*pStr != '\0')
{
putchar((*pStr)^127);
++pStr;
}
printf("\n与127相与:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)&127);
++pStr;
}
printf("\n与127相或:");
pStr=String;
while(*pStr != '\0')
{
putchar((*pStr)|127);
++pStr;
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.结果 是不变化
#include <stdio.h>
int main(void)
{
char str[16]="Hello World";
int i;
for(i=0;str[i]!='\0';i++)
{
printf("str[%d] = %c ,hex is 0x%x\n",i,str[i],str[i]);
}
printf("XOR with zero change to:\n");
for(i=0;i<11;i++)
{
str[i] ^= 0; // <-------- 程序2 改一下这行
printf("str[%d] = %c ,hex is 0x%x\n",i,str[i],str[i]);
}
getchar();
return 0;
}
2.程序类似
&127 不变
| 127 == 127
^127 ==> 低7位取反
#include <stdio.h>
int main(void)
{
char str[16]="Hello World";
int i;
for(i=0;str[i]!='\0';i++)
{
printf("str[%d] = %c ,hex is 0x%x\n",i,str[i],str[i]);
}
printf("XOR with zero change to:\n");
for(i=0;i<11;i++)
{
str[i] ^= 0; // <-------- 程序2 改一下这行
printf("str[%d] = %c ,hex is 0x%x\n",i,str[i],str[i]);
}
getchar();
return 0;
}
2.程序类似
&127 不变
| 127 == 127
^127 ==> 低7位取反
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
int main()
{
char h[20]="Hello World";
char temp[20];
int i;
printf("原字符 %s\n",h);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^0;
temp[i]='\0';
printf("与0异或 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^1;
printf("与1异或 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]&&127;
printf(" 与 127与 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]||127;
printf(" 与 127或 :%s\n ",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^127;
printf(" 与 127异或 :%s\n",temp);
}
#include<string.h>
int main()
{
char h[20]="Hello World";
char temp[20];
int i;
printf("原字符 %s\n",h);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^0;
temp[i]='\0';
printf("与0异或 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^1;
printf("与1异或 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]&&127;
printf(" 与 127与 :%s\n",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]||127;
printf(" 与 127或 :%s\n ",temp);
for (i=0;i<strlen(h);i++)
temp[i]=h[i]^127;
printf(" 与 127异或 :%s\n",temp);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char* transfer(char *str,int n)
{
int i = 0;
while(*(str+i)!='\0')
{
*(str+i) ^= n;
i++;
}
return str;
}
int main()
{
int a = 0;
char str[12] = "Hello World";
printf("首先输入数字0:");
scanf("%d",&a);
printf("%s\n",transfer(str,a));
printf("再输入数字1或任意值:");
scanf("%d",&a);
printf("%s\n",transfer(str,a));
return 0;
}
上面代码可以对任意数值进行异或,进行与、或的运算你可以自己修改transfer()函数内的代码:*(str+i) ^= n;
为:*(str+i) &= n;
然后运行代码查看!
{
int i = 0;
while(*(str+i)!='\0')
{
*(str+i) ^= n;
i++;
}
return str;
}
int main()
{
int a = 0;
char str[12] = "Hello World";
printf("首先输入数字0:");
scanf("%d",&a);
printf("%s\n",transfer(str,a));
printf("再输入数字1或任意值:");
scanf("%d",&a);
printf("%s\n",transfer(str,a));
return 0;
}
上面代码可以对任意数值进行异或,进行与、或的运算你可以自己修改transfer()函数内的代码:*(str+i) ^= n;
为:*(str+i) &= n;
然后运行代码查看!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分有点少吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询