题7:英文加密解密系统主要功能为:在用户输入一段英文文章时,对文章中单词数及句子数进行准确统计,并根据用户的需要对此段文章加密,此后,同样也可以对加密过的文章解密。(1)从终端输入英文程序;(2)统计文章的句子数量程序;(3)统计文章的单词数量程序;(4)文章加密;(5)密文解密
3条回答 默认 最新
- 沐阳gg 2023-04-03 14:37关注
好哥们儿,已回答,莫辜负😂
————————————————————————————————————————#include <stdio.h> #include <string.h> #include <ctype.h> #define MAX_LEN 1000 // 统计句子数量 int count_sentences(char *str) { int count = 0; for (int i = 0; i < strlen(str); i++) { if (str[i] == '.' || str[i] == '?' || str[i] == '!') { count++; } } return count; } // 统计单词数量 int count_words(char *str) { int count = 0; int flag = 0; for (int i = 0; i < strlen(str); i++) { if (isalpha(str[i])) { if (flag == 0) { count++; flag = 1; } } else { flag = 0; } } return count; } // 加密函数 void encrypt(char *str, int key) { for (int i = 0; i < strlen(str); i++) { if (isalpha(str[i])) { str[i] = (str[i] - 'a' + key) % 26 + 'a'; } } } // 解密函数 void decrypt(char *str, int key) { encrypt(str, 26 - key); } int main() { char input[MAX_LEN]; int key; // 从终端输入英文文章 printf("请输入一段英文文章:\n"); fgets(input, MAX_LEN, stdin); // 统计句子数量 int num_sentences = count_sentences(input); printf("句子数量:%d\n", num_sentences); // 统计单词数量 int num_words = count_words(input); printf("单词数量:%d\n", num_words); // 加密文章 printf("请输入加密密钥:\n"); scanf("%d", &key); encrypt(input, key); printf("加密后的文章为:%s\n", input); // 解密文章 decrypt(input, key); printf("解密后的文章为:%s\n", input); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 机器学习能否像多层线性模型一样处理嵌套数据
- ¥20 西门子S7-Graph,S7-300,梯形图
- ¥50 用易语言http 访问不了网页
- ¥50 safari浏览器fetch提交数据后数据丢失问题
- ¥15 matlab不知道怎么改,求解答!!
- ¥15 永磁直线电机的电流环pi调不出来
- ¥15 用stata实现聚类的代码
- ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
- ¥20 docker里部署springboot项目,访问不到扬声器
- ¥15 netty整合springboot之后自动重连失效