1 山地训练(4分)

题目内容:

为了能在下一次跑步比赛中有好的发挥,小白在一条山路上开始了她的跑步训练。她希望能在每次训练中跑得尽可能远,不过她也知道农场中的一条规定:女孩子独自进山的时间不得超过M秒(1 <= M <= 10,000,000)。假设整条山路划分成T个长度相同的路段(1 <= T <= 100,000),并且小白用si表示第i个路段的路况,用u、f、d这3个字母分别表示第i个路段是上坡、平地、下坡。小白跑完一段上坡路的耗时是U秒(1 <= U <= 100),跑完一段平地的耗时是F秒(1 <= F <= 100),跑完一段下坡路的耗时是D秒(1 <= D <= 100)。注意,沿山路原路返回时,原本是上坡的路段变成了下坡路段,原本是下坡的路段变成了上坡路段。小白想知道,在能按时返回农场的前提下,她最多能在这条山路上跑多少个路段。请你编程帮助她计算。

函数原型:long Fun(long M, long T, long U, long F, long D, char str[]);

函数功能:计算在限时M秒内T个路段的情况下,最多往返可跑的路段数。

参数:M,T,U,F,D分别代表限时、路段数,以及上坡、平地、下坡的耗时

数组str保存整条山路的路段状况

返回值:最多可跑的路段数

#define STR_LEN 80long Fun(long M, long T, long U, long F, long D, char str[]);int main()
{long m, t, u, f, d, num;char str[STR_LEN + 1];printf("Input M,T,U,F,D:");scanf("%ld%ld%ld%ld%ld", &m, &t, &u, &f, &d);printf("Input conditions of road:");scanf("%s", str);num = Fun(m, t, u, f, d, str);printf("num=%ld\n", num);return 0;
}long Fun(long M, long T, long U, long F, long D, char str[])
{long i;long sum = 0;for(i = 0; i < T; i++){if(str[i] == 'f')sum += 2*F;elsesum += U + D;if(sum > M)return i;}return T - 1;
}

2 奇偶数分离(4分)

题目内容:

输入n个整数(n从键盘输入,假设n的值不超过100),按奇偶数分成两组并输出。输出两行,第一行为所有奇数,第二行为所有偶数,保持数据的相对顺序与输入顺序相同。

函数原型如下所示:

void Seperate(int a[], int n); //数组a[]存放用户输入的n个整数

解题思路:用两个循环分别输出奇数和偶数,在输出第一个数时用"%d"格式字符,在输出其余数时用",%d"格式字符,用标志变量记录和判断是否是第一个奇数或偶数。

#define N 100//数组a[]存放用户输入的n个整数
void Separate(int a[], int n);int main()
{int n, a[N];printf("Input n:");scanf("%d", &n);printf("Input numbers:");for (int i = 0; i < n; ++i){scanf("%d", &a[i]);}Separate(a, n);return 0;
}void Separate(int a[], int n)
{int count = 1;for (int i = 0; i < n; ++i){if(a[i] % 2 != 0){if(count == 1){printf("%d", a[i]);}else{printf(",%d", a[i]);}count++;}}count = 1;printf("\n");for (int i = 0; i < n; ++i){if(a[i] % 2 == 0){if(count == 1){printf("%d", a[i]);}else{printf(",%d", a[i]);}count++;}}
}

3 子串判断(4分)

题目内容:从键盘输入两个长度小于80的字符串A和B,且A的长度大于B的长度,编程判断B是不是A的子串,如果是,则输出”Yes”,否则输出”No”。这里所谓的该串的子串是指字符串中任意多个连续的字符组成的子序列。

函数原型:int IsSubString(char a[], char b[]);

函数功能:判断b是否是a的子串,是则返回1,否则返回0

#define STR_LEN 80int IsSubString(char a[], char b[]);int main()
{char a[STR_LEN + 1], b[STR_LEN + 1];int result;printf("Input the first string:");gets(a);printf("Input the second string:");gets(b);result = IsSubString(a, b);if(result){printf("Yes\n");}else{printf("No\n");}return 0;
}int IsSubString(char a[], char b[])
{int i = 0, j = 1, flag;while (a[i] != '\0'){//首字符相同if(a[i] == b[0]){flag = 1;while (b[j] != '\0'){if(a[i + j] != b[j]){flag = 0;break;}j++;}if(flag){return 1;}}i++;}return 0;
}

4 星期查找(4分)

题目内容:

任意输入英文的星期几,通过查找如图所示的星期表,输出其对应的数字,若查到表尾,仍未找到,则输出错误提示信息。

提示:用一个二维字符数组weekDay来存放如图所示的星期表的内容(字符串)。输入待查找的字符串,然后在星期表中顺序查找与输入字符串相匹配的字符串。找到的字符串在星期表数组中的第一维下标(行号)即为题目所求。

int main()
{char *weekDay[7] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};char str[10];int flag = 0, i = 0;printf("Please enter a string:\n");gets(str);for (i = 0; i < 7; i++){if(strcmp(str, weekDay[i]) == 0){flag = 1;break;}}if(flag){printf("%s is %d\n", str, i);}else{printf("Not found!\n");}return 0;
}

MOOC哈工大2020C语言程序设计精髓编程题在线测试第十一周相关推荐

  1. MOOC哈工大2020C语言程序设计精髓编程题在线测试第五周

    1 马克思手稿中的趣味数学题(4分) 题目内容: 编程求解马克思手稿中的趣味数学题:有30个人,其中有男人.女人和小孩,在一家饭馆里吃饭共花了50先令,每个男人各花3先令,每个女人各花2先令,每个小孩 ...

  2. 中国大学(慕课)哈工大C语言程序设计精髓编程题在线测试第三周

    1 学分绩计算 题目内容: 已知某大学期末考试学分绩的计算公式为:学分绩 =(工科数学 * 5 + 英语 * 1.5 + 线性代数 * 3.5) / 10请编程从键盘按顺序输入某学生的工科数学.英语和 ...

  3. MOOC哈工大2020C语言程序设计精髓练兵区编程题第九周

    1 二分法求根(4分) 题目内容: 用二分法求下面的一元三次方程在区间[-10, 10]上误差不大于的根. 用二分法求方程的根的基本原理是:若函数有实根,则函数曲线应当在根x*这一点上与x轴有一个交点 ...

  4. 哈工大c语言编程题中国大学mooc第四周,中国大学MOOC哈工大C语言程序设计精髓第六周编程题答案.doc...

    下面代码的功能是将百分制成绩转换为 5 分制成绩,具体功能是: 如果用户输入的是 非法 字符或者不在合理区间内的数据 (例如输入的是 a,或者 102 ,或-45 等),则程序输出 Input err ...

  5. 中国大学MOOC哈工大C语言程序设计第9周编程题在线测试

    中国大学MOOC哈工大C语言程序设计第9周编程题在线测试 1.重复数字检查(4分) 题目内容: 从键盘输入一个数,检查这个数中是否有重复出现的数字.如果这个数中有重复出现的数字,则显示"Re ...

  6. 哈工大C语言程序设计精髓 第十一周编程题

    C语言程序设计精髓 第十一周 指针的孪生兄弟 从这一章开始难度才算是真正开始加大了,前面可以说都在过家家. 练兵区--编程题--不计入总分 1找出按字典顺序排在最前面的国名(4分) 题目内容: 输入5 ...

  7. 哈工大C语言程序设计精髓第三周

    由于这些代码也是我初学时写的代码,故其中的规范程度及简洁程度并不很好(此处我后来写的有可以参考一下->C语言代码规范),但是能很好的接近出初学者的水平,也更有参考价值!排版不易,喜欢就点个赞吧! ...

  8. 哈工大C语言程序设计精髓第六周

    由于这些代码也是我初学时写的代码,故其中的规范程度及简洁程度并不很好(此处我后来写的有可以参考一下->C语言代码规范),但是能很好的接近出初学者的水平,也更有参考价值!排版不易,喜欢就点个赞吧! ...

  9. 哈工大C语言程序设计精髓第五周

    由于这些代码也是我初学时写的代码,故其中的规范程度及简洁程度并不很好(此处我后来写的有可以参考一下->C语言代码规范),但是能很好的接近出初学者的水平,也更有参考价值!排版不易,喜欢就点个赞吧! ...

  10. 哈工大C语言程序设计精髓MOOC 第十三周编程题

    第13周--原来内存也可以这么玩,我是指针我怕谁 练兵区--编程题--不计入总分 2寻找最高分成绩的学生(4分) 题目内容: 下面程序的功能是用动态数组编程输入任意m个班学生(每班n个学生)的某门课的 ...

最新文章

  1. IT从花钱到赚钱——惠普IT转型记
  2. .NET下日志系统的搭建——log4net+kafka+elk
  3. 数据结构之数组定义及基本操作(转)
  4. 你在「动森」里遇到的那些「丑动物」,后来怎么样了?
  5. MVC Model验证
  6. jenkins学习笔记2-在centos中安装jenkins master测试环境
  7. 一年代码功能点的创新性怎么写_查新报告的查新点(创新点)写法,参考
  8. 红皮书--With语句及布尔型
  9. linux安装nfs服务器
  10. 为什么企业宁愿花 15K 重新招人,也不愿意花 10K 留住老测试员?
  11. 15crmo焊接后多长时间探伤_焊工必看:掌握钢结构焊接最重要的10个知识,不愁拿不到高工资!...
  12. 计算机网络体系结构整理-第九单元移动IP
  13. main函数的argc和argv
  14. 一份来自亚马逊技术专家的Google面试指南,GitHub收获9.8万星,已翻译成中文
  15. PdgCntEditor系列教程一:基础知识
  16. Spring WebFlux - WebClient连接池简单测试和代码分析
  17. 综合计算增长比例计算机,比如2001-2010这10年GDP年均增长率怎么计算?
  18. 2021 | VMware ESX虚拟机
  19. GOME-2 SIF 数据链接
  20. 华硕fl8000u主板怎么拆_华硕顽石4笔记本 FL5900U如何打开后盖

热门文章

  1. [机器学习(转)]转AI方向应该注意什么
  2. Android自定义底部显示对话框
  3. 到底什么人适合做亚马逊测评运营?做测评需要具备些什么?
  4. 【数据结构与算法】->算法->地图软件的最优路线是如何计算的?
  5. C语言实现粒子群算法
  6. 菜品盈利数据 帕累托图
  7. PowerBI 一些基础功能
  8. 严守七道关 保证Web数据库安全性
  9. 面向对象——浓缩的哲学1
  10. c语言中与控制语句相关的12个关键字,1.1 C语言中的32个关键字,9种控制语句,34中运算符...