社区
C语言
帖子详情
C语言难题!!求大神帮忙看看!!拜托了!
TMDMZZNQ
2020-06-01 09:04:32
...全文
145
1
打赏
收藏
C语言难题!!求大神帮忙看看!!拜托了!
[图片]
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hgggg2003
2020-06-02
打赏
举报
回复
void EncryptEvenNumberWord(void)
{
char cArraySrc[] = "This is a string test: encrypt Even number word.";
char *pcSrc = cArraySrc;
char *pcDst = cArraySrc;
char cTemp = 0;
bool bResetStart = true;
int iIndexChar = 0;
int iIndexWordStart = 0;
int iIndexWordStop = 0;
int iIndexWord = 0;
int iWordLen = 0;
printf("src[%s]", cArraySrc);
while(0 != *pcSrc)
{
//单词处理
if(!((('a' <= *pcSrc) && ('z' >= *pcSrc)) || (('A' <= *pcSrc) && ('Z' >= *pcSrc))))
{
bResetStart = true;
iWordLen = iIndexWordStop - iIndexWordStart;
//单词字母个数不是偶数,不处理
if(0 != iWordLen % 2)
{
pcSrc ++;
iIndexChar ++;
iIndexWordStop ++;
continue;
}
//单次加密
//a-r o-z ;o-r之间的需如何处理?
//a-r 左移一位
if(((pcDst[iIndexWordStart] >= 'a') && (pcDst[iIndexWordStart] <= 'r'))
|| ((pcDst[iIndexWordStart] >= 'A') && (pcDst[iIndexWordStart] <= 'R')))
{
cTemp = pcDst[iIndexWordStart];
for(iIndexWord = iIndexWordStart; iIndexWord < iIndexWordStop; iIndexWord++)
{
pcDst[iIndexWord] = pcDst[iIndexWord + 1];
}
pcDst[iIndexWordStop - 1] = cTemp;
}
//s-z 右移一位
else if(((pcDst[iIndexWordStart] >= 's') && (pcDst[iIndexWordStart] <= 'z'))
|| ((pcDst[iIndexWordStart] >= 'S') && (pcDst[iIndexWordStart] <= 'Z')))
{
cTemp = pcDst[iIndexWordStop - 1];
for(iIndexWord = iIndexWordStop - 1; iIndexWord > iIndexWordStart; iIndexWord--)
{
pcDst[iIndexWord] = pcDst[iIndexWord - 1];
}
pcDst[iIndexWordStart] = cTemp;
}
}
else if((true == bResetStart) && ((('a' <= *pcSrc) && ('z' >= *pcSrc)) || (('A' <= *pcSrc) && ('Z' >= *pcSrc))))
{
bResetStart = false;
iIndexWordStart = iIndexChar;
}
pcSrc ++;
iIndexChar ++;
iIndexWordStop ++;
}
printf("dst[%s]", cArraySrc);
}
单片机
C语言
编程与实例.pdf
单片机
C语言
的经典力作!
【
C语言
】!x是什么意思?怎么判断真假?
8就是false【ps:
C语言
中 0是false,非0(除了0以外的其他数)是true】 实例2:请问逻辑表达式 -5 && !8 的值是? 分析:总结:因此,判断!x,就是先判断x是true还是false,然后取反即可。......
C语言
求
5!
#include int main() { int i,t; t=1; i=2; while(i) { t=t*i; i=i+1; } printf("%d\n",t); return (0); }
C语言
!和~
!是逻辑非,!0 = 1; !非零 = 零 ~是按位取反,按位取反运算是单目运算,用来
求
一个位串信息按位的反,即哪些为0的位,结果是1,而哪些为1的位,结果是0。例如,~7的结果为0xfff8。
C语言
双感叹号作用!!
两个!是为了把非0值转换成1,而0值还是0。 在
C语言
中,所以非0值都表示真。所以!非0值 = 0,而!0 = 1。 所以!!非0值 = 1,而!!0 = 0。
C语言
70,020
社区成员
243,265
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章