C语言实验报告.docx

上传人:b****2 文档编号:12988133 上传时间:2023-04-22 格式:DOCX 页数:15 大小:17.59KB
下载 相关 举报
C语言实验报告.docx_第1页
第1页 / 共15页
C语言实验报告.docx_第2页
第2页 / 共15页
C语言实验报告.docx_第3页
第3页 / 共15页
C语言实验报告.docx_第4页
第4页 / 共15页
C语言实验报告.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C语言实验报告.docx

《C语言实验报告.docx》由会员分享,可在线阅读,更多相关《C语言实验报告.docx(15页珍藏版)》请在冰豆网上搜索。

C语言实验报告.docx

C语言实验报告

C语言实验报告(三)

一、实验目的

1、掌握C语言中,循环结构

2、掌握C语言中,for语句和while语句的使用

3、掌握break语句与continue语句

4、掌握直到型循环do-while语句

二、实验内容

1.不能被3整除的自然数

输入一整数初始值n(0

样例输入:

10

样例输出:

10111314161719202223

要求输出的每个数据占4列。

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,t=1;

scanf("%d",&n);

for(i=n;t<=10;i++)

if(i%3!

=0)

{

printf("%4d",i);

t++;

}

printf("\n");

return0;

}

2.表达式求和

求1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值,n为键盘输入的一个整数,(0

样例输入:

3

样例输出:

10

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,sum,j;

scanf("%d",&n);

sum=0;

for(i=1;i<=n;i++)

for(j=1;j<=i;j++)

sum+=j;

printf("%d\n",sum);

return0;

}

3.数的平方表

描述:

输入两个空格隔开的整数n和m(0

输入:

用空格隔开的两个整数n和m(0

输出:

从n到m的平方

样例输入:

15

样例输出:

1的平方是1

2的平方是4

3的平方是9

4的平方是16

5的平方是25

·程序代码:

#include"stdio.h"

intmain()

{

intm,n,i,t;

scanf("%d%d",&n,&m);

for(i=n;i<=m;i++)

{

t=i*i;

printf("%d的平方是%d\n",i,t);

}

return0;

}

4.求平方和

描述:

编写一个程序,根据输入的n,计算:

输入:

整数n(n>=0)

输出:

从1到n的平方和

样例输入:

100

样例输出:

338350

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,sum=0;

scanf("%d",&n);

for(i=1;i<=n;i++)

{

sum+=i*i;

}

printf("%d",sum);

return0;

}

5.求和值

描述:

求和值Sn=a+aa+aaa+……+aaaa…aa(n位)

如n=5,a=3,则是求S5=3+33+333+3333+33333。

输入:

用空格隔开的n和a

输出:

s=和值

样例输入:

31

样例输出:

s=123

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,sum,a,j;

scanf("%d%d",&n,&a);

sum=0;j=0;

for(i=1;i<=n;i++)

{

j=j*10+a;

sum+=j;//sum=sum+j;

}

printf("s=%d\n",sum);

return0;

}

6.被7整除的数

描述:

输出指定范围被7整除的数。

输入:

两个用空格隔开的整数n,m(0

输出:

输出单独占一行,在n到m之间(包含n和m),被7整除的数,用一个空格隔开。

样例输入:

1060

样例输出:

14212835424956

·程序代码:

#include"stdio.h"

intmain()

{

intn,m,i;

scanf("%d%d",&n,&m);

for(i=n;i<=m;i++)

if(i%7==0)

{

printf("%d",i);

}

printf("\n");

return0;

}

7.指定范围的水仙花数

描述:

编写一个程序,打印出指定范围的所有“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数。

输入:

输入两个用空格隔开的整数(100

输出:

在n和m之间(含n和m),所有的水仙花数。

每行一个。

样例输入:

100999

样例输出:

153370371407

·程序代码:

#include"stdio.h"

intmain()

{

intn,m,a,b,c,i;

scanf("%d%d",&n,&m);

for(i=n;i<=m;i++)

{

a=i/100;

b=i/10%10;

c=i%10;

if(i==a*a*a+b*b*b+c*c*c)

printf("%d\n",i);

}

return0;

}

8.奇数的乘积

描述:

给你n个整数,求它们中所有奇数的乘积。

输入:

输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。

输出:

输出每组数中的所有奇数的乘积,对于每个测试实例,输出一行。

样例输入:

3123;42345

样例输出:

315

·程序代码:

#include"stdio.h"

intmain(void)

{

intn,i,m,s;

while(scanf("%d",&n)==1)

{

s=1;

for(i=1;i<=n;i++)

{

scanf("%d",&m);

if(m%2!

=0)

s*=m;

}

printf("%d\n",s);

}

return0;

}

9.阶乘和

描述:

编写一个程序,其功能为:

计算并输出:

sum=1!

+2!

+...+n!

输入:

一个在0到10之间(含0和10)的整数n。

输出:

sum=1!

+2!

+...+n!

样例输入:

2

样例输出:

sum=3

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,sum,a,j;

scanf("%d",&n);

sum=0;j=1;

for(i=1;i<=n;i++)

{

j=j*i;

sum+=j;//sum=sum+j;

}

printf("sum=%d\n",sum);

return0;

}

10.牛顿迭代求平方根

描述:

xn的初值可以取a/2。

输入:

一个正实型数据a

输出:

a的平方根,保留5位小数。

样例输入:

2样例输出:

1.41421

·程序代码:

#include"stdio.h"

#include"math.h"

intmain()

{

floata,x1,x2;

scanf("%f",&a);

x1=a/2;

x2=(x1+a/x1)/2;

while(fabs(x1-x2)>=1e-5)

{

x1=x2;

x2=(x1+a/x1)/2;

}

printf("%.5f\n",x2);

return0;

}

11.整数之间的素数

描述:

求指定的两个整数m、n之间的素数(m<=n)

输入:

只有一行,是空格隔开的两个正整数m和n。

(m<=n)

输出:

在m和n之间(含m和n)的所有素数,按照每个数据占6列,每行5个数据输出(最后一行数目可以少)。

样例输入:

100200

样例输出:

101103107109113

127131137139149

151157163167173

179181191193197

199

·程序代码:

#include"stdio.h"

#include"math.h"

intmain()

{

intm,n,a,flag=0,i=2,b=0;

scanf("%d%d",&m,&n);

for(a=m;a<=n;a++)

{

i=2;

flag=0;

while(i<=sqrt(a)&&flag==0)

{

if(a%i==0)

flag=1;

elsei++;

}

if(flag==0)

{

printf("%6d",a);

b++;

if(b%5==0)

printf("\n");

}

}

return0;

}

12.打印菱形

描述:

从键盘输入一个整数n(1≤n≤9),打印出指定的菱形。

输入:

正整数n(1≤n≤9)。

输出:

指定的菱形。

第一行前面有n-1个空格,第二行有n-2个空格,以此类推,直到第n行;从第n+1行后空格开设逐渐增多,每次增加一个。

样例输入:

5

样例输出:

 

*

***

*****

*******

*********

*******

*****

***

*

·程序代码:

#include

intmain()

{

intm,n,i,t;

scanf("%d",&n);

for(i=1;i<=n;i++)

{

for(m=n-i;m>=1;m--)//here

{

printf("");

}

for(t=2*i-1;t>=1;t--)

{

printf("*");

}

printf("\n");

}

for(i=n-1;i>=1;i--)

{

for(m=n-i-1;m>=0;m--)//here

{

printf("");

}

for(t=2*i-1;t>=1;t--)

{

printf("*");

}

printf("\n");

}

return0;

}

13.sumofintegers

描述:

Inthisproblem,yourtaskistocalculateSUM(n)=1+2+3+...+n

输入:

Theinputfirstlineisaintegermdenotesnumberofinputandbelowwillconsistofmintegersn,oneintegerperline

输出:

Foreachcase,outputSUM(n)inoneline,followedbyablankline.Youmayassumetheresultwillbeintherangeof32-bitsignedinteger.

样例输入:

2

1

100

样例输出:

1

5050

·程序代码:

#include"stdio.h"

intmain()

{

intn,i,m,sum,j;

scanf("%d",&n);

for(i=1;i<=n;i++)

{

scanf("%d",&m);

sum=0;

for(j=1;j<=m;j++)

sum+=j;

printf("%d\n\n",sum);

}

return0;

}

14.爬井的小明

描述:

由于有不道德的人偷走了一个窨井盖子,而小明不慎掉了下去,他奋力攀爬。

他想知道需要多长时间可以爬出去。

(数据保证一定可以爬出)已知,小明每分钟可以爬u米,但是每爬完一分钟必须要休息一分钟,在他休息的时间里,他又会往下滑d米。

井深h米。

如果小明在某个时刻已经到达井口,但是未满1分钟,把这一分钟算满。

输入:

hud分别表示井深、小明每分钟爬的距离,和每分钟下滑的距离

输出:

一个整数,表示需要用多少分钟爬出。

样例输入:

[sample1]

1021

[sample2]

2031

样例输出:

[sample1]

17

[sample2]

19

·程序代码:

#include

intmain()

{

doubleh,u,d,v,s;

intt;

while(scanf("%lf%lf%lf",&h,&u,&d)==3)

{

t=0;

s=0;

v=u-d;

for(;;)

{

if(s+u>=h)

{

++t;

break;

}

t+=2;

s+=v;

}

printf("%d\n",t);

}

return0;

}

 

(范文素材和资料部分来自网络,供参考。

可复制、编制,期待你的好评与关注)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1