C语言练习1.docx

上传人:b****4 文档编号:4835863 上传时间:2022-12-10 格式:DOCX 页数:9 大小:16.06KB
下载 相关 举报
C语言练习1.docx_第1页
第1页 / 共9页
C语言练习1.docx_第2页
第2页 / 共9页
C语言练习1.docx_第3页
第3页 / 共9页
C语言练习1.docx_第4页
第4页 / 共9页
C语言练习1.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C语言练习1.docx

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

C语言练习1.docx

C语言练习1

#include

#include

intmain()

{

return0;

}

1.【问题描述】给定平面任意两点的坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留两位小数)。

要求求距离的运算单独放在一个函数中,然后在main函数中调用。

【输入形式】输入两点的坐标(x1,y1)和(x2,y2)

【输出形式】两点间的距离

【样例输入】815849

【样例输出】5.00

#include

#include

#include

floatdistance(floatx1,floaty1,floatx2,floaty2);

intmain()

{

floatx1,x2,y1,y2,dis;

scanf("%f",&x1);

scanf("%f",&y1);

scanf("%f",&x2);

scanf("%f",&y2);

dis=distance(x1,y1,x2,y2);

printf("%.2f",dis);

return0;

}

floatdistance(floatx1,floaty1,floatx2,floaty2)

{

floatz,d;

d=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);

z=sqrt(d);

returnz;

}

2.【问题描述】输入一批正整数(以零或负数为结束标志),求其中的奇数和。

要求定义和调用函数even(n)判断数的奇偶性,当n为偶数时返回1,否则返回0.

【输入形式】输入一批正整数(以零或负数为结束标志)

【输出形式】求其中的奇数和

【样例输入】129718311200

【样例输出】30

#include

#include

inteven(intx)

{

if(x%2==0){

return1;

}

elsereturn0;

}

intmain()

{

intn,sum,i;

sum=0;

n=5;

for(i=1;n>0;i++){

scanf("%d",&n);

if(even(n)==1)

continue;

else

sum=sum+n;

}

while(n>0);

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

return0;

}

3.【问题描述】输入2个正整数m和n(m>1,n<=500),统计并输出m和n之间的素数个数以及这些素数的和。

素数就是只能被1和自身整除的正整数,最小的素数是2.要求调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0.

【输入形式】

【输出形式】

【样例输入】2,10

【样例输出】count=4,sum=17

【样例说明】1到10之间有4个素数:

2,3,5,7

#include

#include

#include

intprime(int);

intmain()

{

intm,n,count,sum,i;

sum=0;

count=0;

scanf("%d",&m);

scanf("%d",&n);

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

if(prime(i)==0){

count++;

sum=sum+i;

}

}

printf("count=%d,sum=%d",count,sum);

return0;

}

intprime(intn)

{

inti;

i=2;

while(i

{

if(n%i==0)

{

break;

}

i++;

}

if(i==n){

return(0);

}

else{return

(1);}

}

4.【问题描述】输入2个正整数a和n,求a+aa+aaa+a.....a(n个a)之和。

要求定义并调用函数fn(a,n),它的功能是返回aa......a(n个a)。

例如fn(3,2)的返回值是33

【输入形式】

【输出形式】

【样例输入】8,5

【样例输出】sum=98760

【样例说明】(样例中a是8,n是5)

【评分标准】

#include

#include

#include

intfn(intx,inty);

intmain()

{

inta,n,b;

scanf("%d",&a);

scanf("%d",&n);

b=fn(a,n);

printf("sum=%d",b);

return0;

}

intfn(intx,inty)

{

intsum=0,m=0;

inti=1;

intj,p;

while(i<=y){

for(j=1,m=0;j<=i;j++){

p=pow(10,(j-1));

m=m+x*p;

}

sum=sum+m;

i++;

}

returnsum;

}

5.【问题描述】输入一个正整n,生成一张阶乘表,输出1!

~n!

的值。

要求定义和调用函数fact(n)计算n!

函数类型为double

【输入形式】

【输出形式】

【样例输入】3

【样例输出】1!

=1

2!

=2

3!

=6

#include

#include

doublefact(intn);

intmain()

{

intn,i;

scanf("%d",&n);

doubles;

i=1;

while(i<=n){

s=fact(i);

printf("%d!

=%.0f\n",i,s);

i++;

}

return0;

}

doublefact(intn){

inti,p;

doubles;

i=1;

s=1;

while(i<=n){

s=s*i;

i++;

}

returns;

}

【样例说明】

6.【问题描述】读入一个整数,统计并输出该数中指定数字的个数,要求调用函数countdigit(number,digit),他的功能是统计整数number中数字digit的个数。

;例如,countdigit(10090,0)的返回值是3.

【输入形式】

【输出形式】

【样例输入】21252,2

【样例输出】Numberofdigit2:

3

#include

#include

intcountdigit(intnum,intdigit);

intmain()

{

intnum,digit,s;

scanf("%d",&num);

scanf("%d",&digit);

s=countdigit(num,digit);

printf("Numberofdigit%d:

%d",digit,s);

return0;

}

intcountdigit(intnum,intdigit){

inti,j=0;

while(num%10!

=0){

i=num%10;

num=num/10;

if(i==digit){

j++;

}

}

returnj;

}

7.【问题描述】输入2个正整数m和n(m>=1,n<=1000),输出m~n之间的所有完数,完数就是因子和与它本身相等的数。

要求定义并调用函数factorsum(number),它的功能是返回number的因子和。

例如,factorsum(12)的返回值是16(1+2+3+4+6)

【输入形式】

【输出形式】

【样例输入】1,100

【样例输出】1628

【样例说明】(试例中m是1,n是100)

#include

#include

intfactorsum(intnum);

intmain()

{

intm,n,s,i,j;

scanf("%d",&m);

scanf("%d",&n);

i=m;

while(i<=n){

s=factorsum(i);

if(s==i){

printf("%d",s);

}

i++;

}

return0;

}

intfactorsum(intn){

inti,sum;

i=1;

sum=0;

if(n==1){

sum=1;

}

else{

while(i

if(n%i==0){

sum=sum+i;

}

i++;

}

}

returnsum;

}

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

当前位置:首页 > 初中教育 > 语文

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

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