【学习记录】第三次实验课作业
发布日期:2023-11-14 11:33:48 浏览次数:6 分类:技术文章

本文共 2534 字,大约阅读时间需要 8 分钟。

1. 计算乘方和

【问题描述】

从键盘为整型变量a赋值,如果a的值为闭区间[3,10]之间的整数,则计算并输出a4+(a+3)4+(a+6)4+(a+9)4+(a+12)4+(a+15)4的值;否则输出“error”。

【输入形式】

按题意

【输出形式】

按题意

【样例输入】

3

【样例输出】

184275

【样例说明】

【评分标准】

正确性

#define _CRT_SECURE_NO_WARNINGS#include 
int main(){ int scf(int x); int a, i, h = 0; scanf("%d", &a); if (a < 3 || a>10) printf("error\n"); else { for (i = 0; i <= 5; i++) h += scf(a + 3 * i); printf("%d\n", h); } return 0;}int scf(int x){ return x * x * x * x;}

2. 水仙花数

【问题描述】

打印出所有“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。

【输入形式】

【输出形式】

每行输出一个水仙花数,有多少个水仙花数,就输出多少行

【评分标准】

正确性

#include 
int main(){ int g, s, b, x, y; for (x = 100; x < 1000; x++) /*框定三位数的范围*/ { g = x % 10; /*求个位*/ s = x / 10 % 10; /*求十位*/ b = x / 100; /*求百位*/ y = g * g * g + s * s * s + b * b * b; if (x == y) printf("%d\n", x); } return 0;}

3. 偶数之和

【问题描述】

输入8个整数,求其中所有偶数的和。

【输入形式】

输入8个整数,每两个整数之间均以空格分隔

【输出形式】

输出1个整数

【样例输入】

1 -2 2 3 5 8 10 4

【样例输出】

22

【样例说明】

【评分标准】

正确性

#define _CRT_SECURE_NO_WARNINGS#include 
int main(){ int z[7], i, b = 0; scanf("%d %d %d %d %d %d %d %d", &z[0], &z[1], &z[2], &z[3], &z[4], &z[5], &z[6], &z[7]); for (i = 0; i < 8; i++) if (!(z[i] % 2)) b += z[i]; printf("%d", b); return 0;}

4. 猴子吃桃问题

【问题描述】

猴子第一天摘下若干个桃子,当即就吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半多一个。到第10天早上想再吃时,发现只剩下一个桃子了。求第一天共摘多少个桃子?

【输入形式】

【输出形式】

输出一个整数,表示第一天所摘桃子的数量

【评分标准】

正确性

#include 
int main(){ int p = 1, i; for (i = 1; i <10; i++) /*循环九次*/ p = (p + 1) * 2; printf("%d", p); return 0;}

5. 寻找完数

【问题描述】

完数是指一个整数恰好等于它的因子之和(除自身外),则称这个数为完数。从键盘先后输入两个不大于9999的正整数mn,若m>n,则交换两数。然后求m~nmn均为正整数且mn)之间的所有完数。

【输入形式】

先后输入两个正整数mn,用逗号分隔

【输出形式】

输出所有完数,每两个数之间用逗号分隔。若输入非法,则输出“error”

【样例输入】

1,2000

【样例输出】

6,28,496

【样例说明】

【评分标准】

正确性

#define _CRT_SECURE_NO_WARNINGS#include 
int main(){ int m, n, e, i, j, y, x = 0; scanf("%d,%d", &m, &n); if (m > 0 && m < 10000 && n>0 && n < 10000) { if (m > n) /*交换*/ { e = m; m = n; n = e; } for (i = m + 1; i < n; i++) /*依次尝试*/ { y = 0; for (j = 1; j < i; j++) /*寻找因子*/ { if (!(i % j)) y += j; /*因子求和*/ } if (i == y) { if (x == 0) /*完成逗号要求*/ { printf("%d", y); x++; } else printf(",%d", y); } } } else printf("error\n"); return 0;}

总结:

  1. "for"语句的循环使用较为熟练;
  2. 进行了使用函数的尝试,形参与实参之间的联系与使用尚未完全了解,需要进一步学习;
  3. 关于输出字符间逗号的处理——善用判断语句和变量的数值变化来解决。

注意:循环的范围对语句处理的影响

转载地址:https://blog.csdn.net/m0_68184427/article/details/124574367 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【学习记录】第二次实验课作业
下一篇:【学习记录】第一次随堂测

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2023年11月04日 20时58分17秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章