当前位置: 首页 > news >正文

上海 网站建设 外包成都网站建设q479185700棒

上海 网站建设 外包,成都网站建设q479185700棒,网站开发大牛,长沙学做网站建设本专栏为c语言练习专栏#xff0c;适合刚刚学完c语言的初学者。本专栏每天会不定时更新#xff0c;通过每天练习#xff0c;进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字#xff1a;错误的集合 密码检查 #x1f493;博主csdn个人主页#xff1a;小小u… 本专栏为c语言练习专栏适合刚刚学完c语言的初学者。本专栏每天会不定时更新通过每天练习进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字错误的集合 密码检查 博主csdn个人主页小小unicorn ⏩专栏分类C语言天天练 代码仓库小小unicorn的代码仓库 关注我带你学习编程知识 Day1 题目一题目描述解题思路代码实现结果情况 题目二题目描述解题思路代码实现结果情况 总结 题目一 题目描述 题目来源错误的集合 集合 s 包含从 1 到 n 的整数。不幸的是因为数据错误导致集合里面某一个数字复制了成了集合里面的另外一个数字的值导致集合 丢失了一个数字 并且 有一个数字重复 。 给定一个数组 nums 代表了集合 S 发生错误后的结果。 请你找出重复出现的整数再找到丢失的整数将它们以数组的形式返回。 解题思路 将数组排序之后比较每对相邻的元素即可找到错误的集合。 寻找重复的数字较为简单如果相邻的两个元素相等则该元素为重复的数字。 寻找丢失的数字相对复杂可能有以下两种情况 1.如果丢失的数字大于 111 且小于 nnn则一定存在相邻的两个元素的差等于 222这两个元素之间的值即为丢失的数字 2.如果丢失的数字是 111 或 nnn则需要另外判断。 为了寻找丢失的数字需要在遍历已排序数组的同时记录上一个元素然后计算当前元素与上一个元素的差。考虑到丢失的数字可能是 111因此需要将上一个元素初始化为 000。 1.当丢失的数字小于 nnn 时通过计算当前元素与上一个元素的差即可得到丢失的数字 2.如果 nums[n−1]≠n则丢失的数字是 nnn。 代码实现 int cmp(int* a, int* b) {return *a - *b; }int* findErrorNums(int* nums, int numsSize, int* returnSize) {int* errorNums malloc(sizeof(int) * 2);*returnSize 2;qsort(nums, numsSize, sizeof(int), cmp);int prev 0;for (int i 0; i numsSize; i) {int curr nums[i];if (curr prev) {errorNums[0] prev;} else if (curr - prev 1) {errorNums[1] prev 1;}prev curr;}if (nums[numsSize - 1] ! numsSize) {errorNums[1] numsSize;}return errorNums; } 结果情况 符合题目要求问题得到解决。 题目二 题目描述 题目来源密码检查 小明同学最近开发了一个网站在用户注册账户的时候需要设置账户的密码为了加强账户的安全性小明对密码强度有一定要求 密码只能由大写字母小写字母数字构成密码不能以数字开头密码中至少出现大写字母小写字母和数字这三种字符类型中的两种密码长度至少为8 现在小明受到了n个密码他想请你写程序判断这些密码中哪些是合适的哪些是不合法的。 输入描述 输入一个数n接下来有n(n≤100)行每行一个字符串表示一个密码输入保证字符串中只出现大写字母小写字母和数字字符串长度不超过100。 输出描述 输入n行如果密码合法输出YES不合法输出NO 解题思路 这道题的关键就是判断字符串长度和首元素即可。 代码实现 #includestdio.h #includestring.hint main() {char arr[101] { 0 };int n 0;scanf(%d, n);int i 0;int j 0;//控制总输入次数for (i 0; i n; i){int flag 0;int flag1 0;int flag2 0;scanf(%s, arr);int sz strlen(arr);//判断字符串长度和首元素if(arr[0] 0 arr[0] 9 || sz 8){printf(NO\n);continue;}//判断条件1,3for (j 0; j sz; j){if (arr[j] a arr[j] z)flag 1;else if (arr[j] A arr[j] Z)flag1 1;else if (arr[j] 0 arr[j] 9)flag2 1;else{printf(NO\n);continue;}}if (flag flag1 flag2 2)printf(YES\n);}return 0; }结果情况 符合题目要求问题得到解决。 总结 文章到这里就要告一段落了有更好的想法或问题欢迎评论区留言。 希望今天的练习能对您有所收获咱们下期见
http://www.dnsts.com.cn/news/17851.html

相关文章:

  • 排名好的网站关键词优化企业网址大全有哪些
  • 网站设计分析怎么写计算机有哪些专业
  • 讨债公司网站建设做网络运营需要掌握什么
  • 中医网站源码东莞 营销网站制作
  • 抽奖小程序制作郴州seo排名
  • 潮州网站seo网页实训报告总结1000字
  • 二级域名做城市分网站汉中市建设工程信息申报系统
  • 浙江邮电工程建设有限公司网站免费引流人脉推广软件
  • 深圳做网站比较好天涯seo中介平台
  • 网站建设百度帖吧深圳微信公众平台
  • 网站背景色详情页设计怎么收费
  • 廊坊做网站公司哪家好金溪网站建设
  • 怎样建设手机网站企业网站建设项目
  • wordpress做物流网站seo研究所
  • 行业网站运营方案wordpress多主题破解版
  • 如何做网站信息黑龙江省建设信息网官网
  • 网站网页设计前言做电商没几个能赚钱的
  • 安康企业网站建设价格上海企业网站开发
  • 取消网站的通知书苏州网站建设找思创
  • 开源saas建站系统如何创办视频网站
  • 成都网站制作长沙简约网站模板
  • 最干净在线网页代理seo运营学校
  • 江苏分销网站建设php团购网站的难点
  • 黄岛网站建设哪家好用sql2000做网站
  • 广州企业如何建网站网页设计与网站建设项目教程
  • 外贸网站翻墙做广告有点尴尬诶该页无法显示wordpress
  • 中小企业建设网站策略wordpress建站seo
  • 网站后台管理系统功能外贸公司名字大全
  • vps如何做网站步骤做教育机构网站
  • 域名seo站长工具如何查看网站是否降权