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

琶洲网站建设asp做网站计数器

琶洲网站建设,asp做网站计数器,如何简单制作自己的网站,新乡市工程建设信息网1.猜凶手 某地发生了一起谋杀案#xff0c;警察通过排查确定杀人凶手必为四个嫌疑犯的一个#xff0c;以下是4个嫌犯的供词。已知#xff08;请编写代码找出凶手#xff09; A说#xff1a;不是我。 B说#xff1a;是C。C说#xff1a;是D。D说#xff1a;C再胡说。 程… 1.猜凶手 某地发生了一起谋杀案警察通过排查确定杀人凶手必为四个嫌疑犯的一个以下是4个嫌犯的供词。已知请编写代码找出凶手 A说不是我。 B说是C。C说是D。D说C再胡说。 程序分析这是一道实际问题其实本身并不复杂只需要分别假定A、B、C、D四人分别是凶                      手假定谁是凶手时满足题意就能确定凶手。写成代码形式可以把这些条件相加                      条件为真为1假则为0当结果等于3时就可以得到正确答案。 程序源代码 #includestdio.h int main() {char killer 0;for (killer A; killer D; killer){if ((killer ! A) (killer C) (killer D) (killer ! D) 3){printf(凶手是%c\n, killer);}}return 0; } 2.猜名次 5位运动员参加了10米台跳水比赛有人让他们预测比赛结果 A选手说:B第二我第三; B选手说:我第二E第四; C选手说: 我第一D第二 D选手说:C最后我第三 E选手说:我第四A第一; 比赛结束后每位选手都说对了一半请编程确定比赛的名次 程序分析通过前面一题的经验我们可以采用条件相加等于一个特定值来进行判断满足条件的名次这里我们通过穷举法进行分析。 程序源代码 #include stdio.h int main() {int a, b, c, d, e;for (a 1; a 5; a) {for (b 1; b 5; b) {for (c 1; c 5; c){for (d 1; d 5; d) {for (e 1; e 5; e){ if (((b 2) (a 3) 1) ((b 2) (e 4) 1) ((c 1) (d 2) 1) ((c 5) (d 3) 1) ((e 4) (a 1) 1)) {if(a * b * c * d * e 120 )printf(A:%d, B:%d,C:%d, D:%d, E:%d\n, a, b, c, d, e);} }}}}}return 0; } 3.杨氏矩阵 有一个数字矩阵矩阵的每行从左到右是递增的矩阵从上到下是递增的请编写程序在这样的矩阵中查找某个数字是否存在。  要求时间复杂度小于ON 程序分析对于在一个题目中这种数组中查找某个数字我们可以采取遍历整个数组的方法找到该数字但是时间复杂度上就不满足因此我们要选择一种更优的查找算法。在本代码中我们选取右上角的数字为标准因为数组不论是从上到下还是从左到右都是递增的。如果要查找的数字大于右上角的数字则第一排的数字不可能存在我们要找的数字因此可以直接划去第一排如果要查找的数字小于右上角的数字则该列的数字不可能存在我们要找的数字因此可以直接划去该列。 int find_num(int arr[3][3], int* row, int* col, int k) {int x 0;int y *col - 1;while (x *row y0){if (arr[x][y] k){x;}else if (arr[x][y] k){y--;}else{*row x;*col y;return 1;}}return 0; } int main() {int arr[3][3] { 1,2,3,4,5,6,7,8,9 };//查找数字7int k 7;int x 3;int y 3;int ret find_num(arr, x, y, k);if (ret 1){printf(找到了在arr[%d][%d],x ,y );}else{printf(找不到\n);}return 0; } 4.旋转字符串 左旋字符串实例A B C D E F,逆序一次后变成B C D E F A 程序分析 要左旋一次字符串就是要把最左边的字符放在最右边然后后边的字符串都往前挪动一个长度。因此我们想到用指针的方式来进行作答先把最左边的字符存储起来后面的字符利用循环的方式依次前移最后把存储起来的字符放在最后即可 程序源代码 #includestdio.h #includestring.h void left_rotate(char* str, int k) {int i 0;int len (int)strlen(str);for (i 0; i k; i){//把左侧数字存储起来char tmp *str;int j 0;for (j 0; j len - 1; j){//把n-1个字符前移*(str j) *(str j 1);}//把tmp的值放在最后*(str len - 1) tmp;} } int main() {char str[10] ABCDEF;int k 2;left_rotate(str, k);printf(%s, str);return 0; } 我们也可以使用三步翻转法来解决该问题,大家可以参考一下下面的代码 #includestdio.h void reverse_string(char* left, char* right) {while (left right){char tmp *left;*left *right;*right tmp;left;right--;} } void left_rotate(char* str, int k) {int len strlen(str);reverse_string(str, str k - 1);//左reverse_string(str k, str len - 1);//右reverse_string(str, str len - 1);//整体 } int main() {char str[10] ABCDEF;int k 4;left_rotate(str, k);printf(%s\n, str);return 0; } 5.逆序字符串 将一句话的单词进行倒置标点不倒置比如I like beijing.经过函数后变为:beijing. like I 程序分析在这里介绍一种经典的翻转字符串的方法三步翻转法。首先我们把整个字符串进行翻转就以I like beijing.为例翻转后变成.gnijieb ekil I然后紧接着再把各个单词进行翻转就变成beijing. like I正好满足题意。 程序源代码 //三步翻转法 #includestdio.h #includestdlib.h void reverse_string(char* left, char* right) {while (left right){char tmp *left;*left *right;*right tmp;left;right--;} } int main() {char arr[100] { 0 };gets(arr);int len (int) strlen(arr);//字符串整体反转reverse_string(arr, arr len - 1);//单个单词反转char* start arr;while (*start){char* end start;while (*end ! *end! \0){end;}reverse_string(start, end - 1);if (*end )start end 1;elsestart end;}printf(%s, arr);return 0; } 6.公务员面试 公务员面试现场打分有7位考官从键盘上输入若干组成绩每组7个分数百分制去掉一个最高分和一个最低分输出每组的平均成绩。输入描述一行输入7个参数0~100代表7个成绩用空格分隔。  程序分析其实大体的思路比较清晰就是利用scanf依次读取7个数据找出七个数据中的最大值和最小值打印输出除去最大最小值后其他数据的平均值。下面是最普通的代码实例。 程序源代码 #includestdio.h int cmp(const void* a,const void* b) {return (*(int*)a - *(int*)b);//升序 } int main() {int sum 0;int score[7] { 0 };int i 0;for (i 0; i 7; i){scanf(%d, score[i]);sum score[i];}qsort(score, 7, sizeof(int), cmp);int min score[0];int max score[6];printf(%.2f, (sum - min - max) / 5.0);return 0; } 其实上面的实现方法比较复杂使用了快速排序函数qsort先排序后找出最大最小值其实我们可以在读取数据时就顺便把最大最小值找出这样极大简化了程序的复杂程度。请看下面源代码 #includestdio.h int main() {int score 0;int sum 0;int max 0;int min 100;//我们把min的初始值置成100以确保最小值能够正常更新int i 0;for (i 0; i 7; i){scanf(%d, score);sum score;if (score max){max score;}if (score min){min score;}}printf(%.2f, (sum - min - max) / 5.0);return 0; } 7.获得月份的天数 KIKI想获得某年某月有多少天请帮助他编程实现输入年份和月份计算这一年这个月有多少天。输入描述多组输入一行有两个整数分别表示年份和月份用空格分隔 程序分析首先看见多组输入我们设计成while循环以end of file作为结束条件实现多组输入。然后我们要考虑特殊情况平年的二月是28天闰年的二月是29天所以我们要判断一下平年还是闰年。因为每年都是十二个月除二月有特殊情况外其他的每年都一样我们决定采用数组下标访问的方式来进行。 #includestdio.h #define EOF (-1) int main() {int year 0;int month 0;int days[13] { 0,31,28,31,30,31,30,31,31,30,30,31 };while (scanf(%d %d, year, month) ! EOF){int day days[month];if (year 2){//判断是否是闰年if ((year % 4 0 year % 100 ! 0) || (year % 400 0)){day 1;}}printf(%d\n, day);}return 0; } 8、有序序列插入一个数使其仍为一个有序数组 有一个有序数字序列从小到大排序将一个新输入的数插入到序列中保证插入新数后序列仍然是升序输入描述第一行输入一个整数(0N50)。第二行输入N个升序排列的整数输入用空格分隔的N个整数第三行输入想要进行插入的一个整数。 程序分析我们看见题目最先想到的是把数字直接插入进去进行冒泡排序即可再次得到一个有序数组但是冒泡排序使用了两次for循环时间复杂度为o(n^2)比较复杂。 通过列举一个简单的示例我们发现要把一个数字插入只要后面的数字依次往后后退一个位置再把这个数字插入进去问题就得到了解决。 程序源代码 #includestdio.h int main() {int n 0;scanf(%d, n);int arr[51] { 0 };int i 0;for (i 0; i n; i){scanf(%d, arr[i]);}int m 0;//要插入的数字scanf(%d, m);for (i n - 1; i0 ; i--){if (m arr[i]){arr[i 1] arr[i];}else{arr[i1] m;break;}}if (i 0){arr[0] m;}for(i 0; i n 1; i){printf(%d , arr[i]);}return 0; } 9.找出缺失的数字多种方法实现 数组num包含从0到n的所有整数但其中缺了一个请编写代码找出那个缺失的整数你有办法在O(n)内完成吗编写C语言代码解决使用按位异或的知识 程序分析法一、看见题目我们首先想到可以用遍历数组的方式来找出缺失的值先使用qsort函数进行排序如果碰到一个数字的值不等于下一个数字的值-1那么我们就找到了缺失的数字。法二、采用相减的方法可快速求出结果0123...n-(a[0]a[1][2]...a[n-1])。法三、qsot排序数组中值是几就在第几个位置上写下这个值。法四、采用按位异或的方法a^a0,a^0a.这里具体只实现第四种方法。 程序源代码 #includestdio.h int find_missing(int arr[], int sz) {int missing 0;int i 0;//对0~n的数字进行抑或for (i 0; i sz; i){missing ^ i;}//与数组中的数字进行抑或for (i 0; i sz; i){missing ^ arr[i];}return missing; } int main() {int arr[] { 0,1,2,3,5,6 };int sz sizeof(arr) / sizeof(arr[0]);printf(%d\n,find_missing(arr,sz));return 0; }
http://www.sadfv.cn/news/332651/

相关文章:

  • 郑州外贸营销网站建设wordpress主体和模板
  • 建设网站贵吗wordpress主机安装教程
  • 手机网站建设报价表做著名建筑物网站简介
  • 网站建设内容方法关键词推广是什么
  • 游戏网站建设论文免费的ppt制作软件
  • 网上做造价网站长沙软件开发培训机构
  • 怎么在各大网站做推广动态设计用什么软件
  • 网站建设在开封找谁做贵州企业品牌网站建设
  • 网站维护托管公司上海网站建设雍熙
  • 怎么做家具网站hexo插件wordpress
  • 电脑网页打不开怎么回事外贸网站seo招聘
  • 企业设计网站建设做网站系统的答辩ppt范文
  • 正规网站备案信息表wordpress批量添加连接
  • 如何给网站做app我的世界做封面网站
  • 二进制可以做网站是吗杭州做企业网站公司
  • 北京联通网站备案ui设计学徒
  • 免费做销售网站有哪些网站开发团队需配备什么岗位
  • 网站 成品下载百度推广如何获取精准的客户
  • 网站开发职责与要求django企业网站源码
  • 网站建设经费请示太仓网站设计早晨设计
  • 出口贸易网站网站艺术设计
  • 有备案号的网站是公司的吗滦南县建设局网站
  • 网站建设"淘宝网" 在颜色选取和搭配方面有哪些值得学习的地方.旅游网站建设的可行性分析
  • 织梦网站添加视频教程河北建设工程信息网官网 费用中项网
  • 建网站有哪些文件夹衡阳企业seo优化首选
  • 深圳网站建设流程网站运作方式
  • 销售网站排名wordpress 全文检索
  • ADPR国际传媒网站建设互联网营销师证
  • 查工程建设不良记录免费的网站在线缩短网址
  • 网站怎么在百度搜到网站整站建设