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

当前位置:首页 > C语言程序设计实验与习题答案

C语言程序设计实验与习题答案

  • 62 次阅读
  • 3 次下载
  • 2025/6/4 1:53:31

...

int i,j,k; for(i=1;i<=6;i++) {

for(k=1;k<=20-(2*i-1)/2;k++) printf(\for(j=1;j<=2*i-1;j++) printf(\printf(\} }

(2) 编写一个程序输出所有

5 位数字的回文。

方法一:

#include void main() {

long x,a,t; //x: 原5 位整数,a:用来暂存 x,t: 把 a 反序后的数 int i,num=0; //i: 表示原 5 位数的某一位 ,num: 回文数的个数 for(x=10000;x<=99999;x++) //每次取出 1 个 5 位整数 {

a=x; //把取出的 5 位整数保存到 a t=0; //t 用来存放反序后的数 while(a>0) { i=a; //取出当前数的最后一位到 i

t=t*10+i; //把取出的 i 组装到 t a=a/10; }

...

...

if(x==t)

{printf(\if(num==0) //原来的 5 位整数等于反序后的数 t num++;} printf(\//每行输出 10 个数

} } 方法二:

/*求 5 位整数中所有回文 */

#include void main() {

long int n,m,t=0;

for(n=10000;n<=99999;n++) {

if(hw(n)==1)

{ printf(\t++;

if(t%5==0) printf(\/*每行输出 5 个数*/

} } }

int hw(long int a) /*hw 函数测试 a 是否是回文 */

{

long int m,r=0; m=a; while(m) {

r=r*10+m; m/=10; }

if(a==r) return 1; /*是回文返回 1 */ else

return 0; /*是回文返回 0 */ }

(3) 编程计算 e=1+1/1!+1/2!+1/3!+ , (即最后一项 1/n!<1e-6 就停止循环)。

...

!。精度为+1/n 1e-6

...

提示:注意 1/n!=1/(n-1)!*1/n ;利用循环加上每一次的分项。

#include void main()

{ long i;

double e,t;

e=1.0

;

t=1.0;

for(i=1;

t>1e-6 ;i++)

{t/=(double)i;

e+=t; }

printf(\

}

2. ⑴

①a[10]=x; ②break; ③a[k]=x;

附:算法简析 main() {

int x,i,j,k;/* 感觉似乎 j 定义了没什么作用 int a[11]={8,18,28,38,48,58,68,78,88,98};

printf(\请输入需要插入的一个整数: \

scanf(\

a[10]=x;/* 把 x 放到数据串最末位置 */

for(i=0;i<10;i++)

...

*/

...

if(x

时退出 */

寻找 x 的插入点,当发现插入点

for(i=10;i>k;i--)/* 将插入点以及其后的每个数据后移一个

单位(给 x 腾位) */

/* 实例演示——腾位

8 18 28 38 48 58 68 78 88 98 (x)

8 18 28 38 38 48 58 68 78 88 98

↑ 插入点

*/

a[i]=a[i-1];

a[k]=x;/* 将 x 放到插入点位置 */

for (i=0;i<11;i++)

printf(\printf(\

}

⑵①i%7==0||i==0 ②n++ ③i%5==0

3.

⑴a.将 continue;改为 break; b.将 i=k-1; 改为 j=k-1; c.将 j=k+1; 改为 i=k+1;

d.将 for(i=0;i<10;i++) 改为 for(i=0;i<9;i++);

附:算法简析

#include

void main() {int x, i,j,k;

...

搜索更多关于: C语言程序设计实验与习题答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

... int i,j,k; for(i=1;i<=6;i++) { for(k=1;k<=20-(2*i-1)/2;k++) printf(\for(j=1;j<=2*i-1;j++) printf(\printf(\} } (2) 编写一个程序输出所有 5 位数字的回文。 方法一: #include void main() { long x,a,t; //x: 原5 位整数,a:用来暂存 x,t: 把 a 反序后的数 int i,num=0; //i: 表示原 5 位数的某一位 ,num: 回文数的个数 for(x=10000;x<=99999;x++) //每次取出 1 个 5 位整数 { a=x; //把取出的 5 位整数保存到 a t=0; /

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价: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