云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 中国大学MOOC-哈工大-C语言程序设计精髓第六-十二周编程题答案

中国大学MOOC-哈工大-C语言程序设计精髓第六-十二周编程题答案

  • 62 次阅读
  • 3 次下载
  • 2026/4/23 12:12:15

Input n(n<1000): 532↙ X=3,Y=2,Z=1

程序运行结果示例2: Input n(n<1000): 977↙ Invalid

输入提示:\Input n(n<1000):\\n\ 输入格式: \

输出格式:\ 计算不成功(无解)的输出提示:\

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include main() {

printf(\); int a,b,c,n,s,x,y,z,flag=0; scanf(\, &n); for (x=1;x<=9;x++){ for (y=1;y<=9;y++){ for (z=0;z<=9;z++){

if (x*100+y*10+z+y*100+z*11 == n){ flag=1;

a=x,b=y,c=z; break; } } } }

if (flag)

printf(\,a,b,c); else printf(\); }

8.1矩阵转置v1.0(4分)

题目内容:

用二维数组作为函数参数,编程计算并输出n×n阶矩阵的转置矩阵。其中,n的值不超过10,n的值由用户从键盘输入。

程序运行结果示例1: Input n:3↙ Input 3*3 matrix: 1 2 3↙ 4 5 6↙ 7 8 9↙

The transposed matrix is: 1 4 7 2 5 8 3 6 9

程序运行结果示例2: Input n:2↙ Input 2*2 matrix: 1 2↙ 4 5↙

The transposed matrix is: 1 4 2 5

#include int main(){

printf(\); int n;

scanf(\,&n);

printf(\,n,n); int m[n][n],i,j; for (i=0;i

scanf(\,&m[i][j]); } }

printf(\); for (i=0;i

printf(\,m[j][i]);

}

printf(\); }

return 0; }

8.2 兔子生崽问题(4分)

题目内容:

假设一对小兔的成熟期是一个月,即一个月可长成成兔,那么如果每对成兔每个月都可以生一对小兔,一对新生的小兔从第二个月起就开始生兔子,试问从一对兔子开始繁殖,n(n<=12)月以后可有多少对兔子(即当年第n月份总计有多少对兔子,含成兔和小兔)?请编程求解该问题,n的值要求从键盘输入。

参考答案:依题意,兔子的繁殖情况如图所示。图中实线表示成兔仍是成兔或者小兔长成成兔;虚线表示成兔生小兔。观察分析此图可发现如下规律: (1)每月小兔对数 = 上个月成兔对数。

(2)每月成兔对数 = 上个月成兔对数 + 上个月小兔对数。 综合(1)和(2)有:每月成兔对数 = 前两个月成兔对数之和。

用fn(n=1,2,…)表示第n个月成兔对数,于是可将上述规律表示为如下递推公式:

#include int main(){

printf(\); int n,total=0,i,s=0,b=1,t; scanf(\,&n); printf(\,1); for (i=2;i<=n;i++){ t=s; s=b; b=b+t;

printf(\,s+b); }

printf(\,s+b); return 0; }

8.3

抓交通肇事犯(4分)

题目内容:

一辆卡车违犯交通规则,撞人后逃跑。现场有三人目击事件,但都没记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是位数学家,他说:四位的车号刚好是一个整数的平方。现在请根据以上线索帮助警方找出车号以便尽快破案。

[提示]:假设这个4位数的前两位数字都是i,后两位数字都是j,则这个可能的4位数

k = 1000*i + 100*i + 10*j + j

式中,i和j都在0~9变化。此外,还应使k=m*m,m是整数。由于k是一个4位数,所以m值不可能小于31。

输入格式: 无

输出格式:\k=%d,m=%d\\n\

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include int main(){

int i,j,k,m,tk,tm; for (i=0;i<=9;i++){ for (j=0;j<=9;j++){

for (m=31;m<100;m++){

k = 1000*i + 100*i + 10*j + j; if (i!=j && m*m==k){ tm=m; tk=k; break; } } } }

printf(\,tk,tm); return 0; }

8.4

检验并打印幻方矩阵。(4分)

题目内容:

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

Input n(n<1000): 532↙ X=3,Y=2,Z=1 程序运行结果示例2: Input n(n<1000): 977↙ Invalid 输入提示:\Input n(n<1000):\\n\ 输入格式: \ 输出格式:\ 计算不成功(无解)的输出提示:\ 注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! #include main() { printf(\); int a,b,c,n,s,x,y,z,flag=0; scanf(\, &n); for (x=1;x<=9;x++){ for (y=1;y<=9;y++){ for (z=0;z<=9;z++){ if

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com