C语言实验Word文件下载.doc
《C语言实验Word文件下载.doc》由会员分享,可在线阅读,更多相关《C语言实验Word文件下载.doc(40页珍藏版)》请在冰豆网上搜索。
![C语言实验Word文件下载.doc](https://file1.bdocx.com/fileroot1/2022-10/7/be151c67-7efd-4490-ab42-39519adbf215/be151c67-7efd-4490-ab42-39519adbf2151.gif)
,C);
圆面积为:
%6.2f\n"
s);
圆球表面积为:
S);
圆球体积为:
v);
圆柱体积为:
V);
getch();
}
运行结果:
3,4,
圆周长为:
18.85
圆面积为:
28.27
圆球表面积为:
113.10
圆球体积为:
圆柱体积为:
4.9输入一个华氏温度,要求输出摄氏温度。
公式为C=5/9(F-32),输出要有文字说明,取两位小数。
floatc,F;
%f"
F);
c=5.0/9.0*(F-32);
华氏温度为:
%6.2f"
c);
15.56
6.1输入两个正整数m和n,求其最大公约数和最小公倍数。
#include<
stdio.h>
math.h>
intm,n,i,j;
输入两个正整数:
"
);
%d,%d"
m,&
n);
for(i=n;
;
i--)
if((m%i==0)&
&
(n%i==0))
{printf("
其最大公约数为:
%d\n"
i);
break;
for(j=m;
j=j+m)
if(j%n==0)
m和n的最小公倍数为:
j);
15,66
其最大公约数为:
3
m和n的最小公倍数为:
330
6.2输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
conio.h"
charc;
inti=0,j=0,k=0,m=0;
printf("
输入一行字符:
while((c=getchar())!
='
\n'
)
{if((c>
a'
c<
z'
)||(c>
A'
Z'
))
i++;
elseif(c=='
'
j++;
elseif((c>
0'
)&
(c<
9'
k++;
elsej++;
printf("
其中英文字母%d个\n空格%d个\n数字%d个\n其他字符%d个\n"
i,j,k,m);
getch();
未能运行,原因:
15行j++错误。
修改后
6.3求S=a+aa+aaa+…+aaa…a之值,其中a是一个数字,n表示a的位数。
{inta,n,i,sum;
输入a,n:
scanf("
a,&
for(i=1,sum=0;
n>
0;
n--)
{sum=sum+n*a*i;
i=i*10;
a+aa+aaa+…=%d\n"
sum);
2,5
a+aa+aaa+…=24690
6.4求1!
+2!
+3!
+…+20!
。
inti;
floatsum,t;
for(i=1,sum=0,t=1;
i<
=20;
i++)
{t=t*i;
sum=sum+t;
1!
+2!
+3!
+…+20!
=%e\n"
2.56133e+18
6.5求和1+2+3…+100+1^2+2^2+3^2+…50^2+1/1+1/2+1/3+…1/10。
floatk,i,j,n,sum;
for(k=1,i=0;
k<
=100;
k++)
i=i+k;
for(k=1,j=0;
=50;
j=j+k*k;
for(k=1,n=0;
=10;
n=n+1/k;
sum=i+j+n;
其值为:
%8.2f\n"
47977.93
6.7一个数如果恰好等于它的因子之和,这个数就称为“完数”。
编程找出1000之内的所有完数,并按下面格式输出其因子:
6itsfactorsare1,2,3.
{intn,i,j;
for(n=2;
n<
1000;
n++)
for(i=1,j=0;
n;
if(n%i==0)
j=j+i;
if(n==j)
%ditsfactorsare"
n);
for(i=1;
%d,"
\n"
6.8有一分数序列2/1,3/2,5/3,,8/5,13/8,21/13…求这个数列的前20项之和。
#include<
inti;
floatsum=0,m=1,n=2;
for(i=1;
21;
{sum=sum+n/m;
n=m+n;
m=n-m;
}
printf("
这个数列的前20项之和为%8.3f\n"
getch();
这个数列的前20项之和为
6.9一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。
求它在第十次落地时,共经过多少米?
第十次反弹多高?
floats,l,h;
s=100;
l=100;
h=100;
for(i=2;
11;
s=s+l;
l=l/2;
第10次落地时共经过%f米\n"
10;
h=h/2;
第10次反弹高度为%f米"
h);
6.15两个兵乓球队进行比赛,各出3人。
甲队为A,B,C三人,乙队为X,Y,Z三人。
已抽签决定比赛名单。
有人向队员打听比赛名单,A说他不和X比,C说他不和X,Z比,请编程序找出三队赛手的名单。
chari,j,k;
for(i='
X'
for(j='
j<
j++)
for(k='
if(i!
=j&
i!
=k&
j!
=k)
k!
printf("
A--%c\nB--%c\nC--%c\n"
i,j,k);
7.1用筛选法求100之内的素数。
math.h"
{inta[101],i,j,n;
a[i]=i;
for(i=2;
sqrt(100);
{for(j=i+1;
=99;
{if(a[i]!
=0&
a[j]!
=0)
if(a[j]%a[i]==0)
a[j]=0;
}}
for(i=0,n=0;
if(a[i]!
{printf("
a[i]);
n++;
if(n%5==0)
printf("
getch();
}
7.2用选择法对10个整数排序。
inti,j,t=0,min,a[11];
for(i=1;
a[i]);
原数据为:
=9;
{min=i;
for(j=i+1;
if(a[min]>
a[j])
min=j;
t=a[i];
a[i]=a[min];
a[min]=t;
printf("
按从小到大的顺序排列为:
for(i=1;
getch();
8.1写两个函数,分别