C语言课后作业50(附参考答案)_第1页
C语言课后作业50(附参考答案)_第2页
C语言课后作业50(附参考答案)_第3页
C语言课后作业50(附参考答案)_第4页
C语言课后作业50(附参考答案)_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.输入一个不超过五位的正整数,输出其逆数。例如输入12345,输出应为54321。

#include<stdio.h>

main(){

ints[5];

intn,j;

printf("请输入一个正的五位数");

scanf("%d",&n);

s[0]=n%10;

printf("%d"zs[0]);

s[l]=(n%100-s[0])/10;

printf("%d",s[1]);

s[2]=(n%1000-s[0]-s[1])/100;

printf("%d",s[2]);

s[3]=(n%10000-s[0]-s[1]-s[2])/1000;

printf("%d",s[3]);

s[4]=(n%100000-s[0]-s[1]-s[2]-s[3])/10000;

printf("%d"zs[4]);

printf("输出逆转后的5位数");

for(j=0;j<=4;j++){

printf("%d",s[j]);

)

)

2.计算l+2+3...+n的值,n是从键盘输入的自然数。

#include<stdio.h>

main(){

intn;

inti;

printf("请输入一个自然数:;

scanf("%d",&n);

i=n*(n+1)/2;

printf("输出1-n的自然数之和:%d\n",i);

)

3.从终端(键盘)读入20个数据到数组中,统计其中正数的个数,

并计算这些正数之和。

#include<stdio.h>

#definenaxxlO

main()

{

ints[naxx];

inta[naxx];

inti=O;

intj=0;

intl=O;

intsum=O;

intk;

printf("请输入:");

for(i=0;i<naxx;i++){

scanf(n%d",&s[i]);

)

for(j=0;j<naxx;j++)

{if(s[j]>0)

{a[1]=s[j];

sum+=a[1];

1++;

)

)

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

{printf("%ci\n"za[i]);}

printf("输入数之和%d\n”,sum);

)

4.从终端(键盘)将5个整数输入到数组a中,然后将a逆序复制

到数组b中,并输出b中各元素的值。

#include<stdio.h>

#definenaxx5

main()

inti=0;

intj=0;

intk=0;

ints[naxx];

inta[naxx];

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

{

s[i]=i;

printf("%d\nn,s[i]);

)

for(i=5;i>0;i--)

{

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

j++;

printf("%d",a[j-1]);

)

}

5.要将5张100元的大钞票,换成等值的50元,20元,10元,5

元一张的小钞票,每种面值至少1张,编程求的需要多少张纸币。

#include<stdio.h>

#definemoney500

main()

inti,k;

intj,1;

printf("输出结果:\n");

for(i=50+(money%50);i<money;i+=50)

for(j=20;(money%50==0)j<i-15:j<=i-15;j+=20)

for(k=10;k<i-j;k+=l0)

{printf("%d张50%d张20%d张10%d张

5\n",(money-i)/50,j/20,k/10,(i-j-k)/5);

}

)

)

)

6.求n以内(不包括n)同时能被3和7整除的所有自然数之和的

平方根s,n从键盘输入。例如若n为1000时一,函数值应为:

s=153.909064。

#include<stdio.h>

#include<math.h>

main()

inti;

intn=l;

intsum=O;

printf("输入——个〉21的数:");

scanf(n%dn,&n);

if(n>21)

{n——;

for(;n>=21;n--)

if(n%3==0&&n%7==0)

printf(n%d",n);

sum+=n;

i=sqrt(sum);

)

}

printf("\n");

}

else{

printf("输入错误:\n");}

)

7.一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但

都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字

是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙

是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线

索找出车号。

#include<stdio.h>

main()

inti;

intj;

inta,b,c,d;

for(i=31;i<100;i++)

{

j=i*i;

a=j%10;

b=(j%100-a)/IO;

c=(j%1000-a-b)/1OO;

d=j/1000;

if((a==b&&c==d)&&a!=c)

{printf("输出牌号:%d\n",j);}

)

)

8.输入之间的一个数字,输出它对应的英文单词。

#include<stdio.h>//第八题:

#include<stdlib.h>

#include<math.h>

main(){

intq;

intt;

,,,,,,,

charm[10]={'a',b'z'c,ci'ze','f'zg','h'z'i,j

');

//printf("%c",m[2]);

printf("请输入l-10\n");

scanf("%d",&q);

t=q-l;

printf(n%d对应的字母是:%c\n",q,m[t]);

)

9.个位数为6且能被3整除但不能被5整除的三位自然数共有多少

个,分别是哪些?

#include<stdio.h>//第九题

#include<stdlib.h>

#include<math.h>

main()

inti;

for(i=100;i<1000;i++)

if(i%10==6)

if(i%3==0)

if(i%5!=0)

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

)

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

//continue;

)

)

}

10.输入某年某月某日,判断这一天是这一年的第几天?

#include<stdio.h>//第十题

#include<stdlib.h>

#include<math.h>

main(){

inty,m,d;

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

if(y%4==0&y%100!=0|y%400==0){

switch(m){

easel:

printf("是今年的%d^\n",d);

break;

case2:

printf("是今年的%d天\n”,d+31);

break;

case3:

printf("是今年的%d天\n”,d+31+29);

break;

case4:

printf("是今年的%d天\n",d+31+29+31);

break;

case5:

printf("是今年的%d天\n”,d+31+29+31+30);

break;

case6:

printf("是今年的%d天\n”,d+31+29+31+30+31);

break;

case?:

printf("是今年的%d^\n",d+31+29+31+30+31+30);

break;

case8:

printf("是今年的%(1天\11",d+31+29+31+30+31+31+31);

break;

case9:

printf("是今年的%d^\n",d+31+29+31+30+31+31+31+31);

break;

caselO:

printf("是今年的%d天

\n",d+31+29+31+30+31+31+31+31+30);

break;

casell:

printf("是今年的%d天

\n",d+31+29+31+30+31+31+31+31+30

+31);

break;

casel2:

printf("是今年的%d天

\n",d+31+29+31+30+31+31+31+31+30

+31+30);

break;

)

}else{

switch(m){

easel:

printf("是今年的%d天\n",d);

break;

case2:

printf("是今年的%d天\n”,d+31);

break;

case3:

printf("是今年的%d天\n”,d+31+28);

break;

case4:

printf("是今年的%d天\n”,d+31+28+31);

break;

case5:

printf("是今年的%(1天\11",d+31+28+31+30);

break;

case6:

printf("是今年的%d天\n”,d+31+28+31+30+31);

break;

case7:

printf("是今年的%d天\n”,d+31+28+31+30+31+30);

break;

case8:

printf("是今年的%d天\n”,d+31+28+31+30+31+31+31);

break;

case9:

printf("是今年的%d天\n”,d+31+28+31+30+31+31+31+31);

break;

caselO:

printf("是今年的%d天

\n"^+31+28+31+30+31+31+31+31+30);

break;

casell:

printf("是今年的%d天

\n",d+31+28+31+30+31+31+31+31+30

+31);

break;

casel2:

printf("是今年的%d天

\n",d+31+28+31+30+31+31+31+31+30

+31+30);

break;

}

)

}

11.两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队

为x,y,z三人。已抽签决定

比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不

和x,z比,请编程序找出三队赛手的名单。

#include<stdio.h>

intmain(){

chari;

charj;

chark;

for(i=*x*;i<=*z*;i++)

(

for(j=,x*;j<=,z*;j++)

(

if(i!=j)

{

for(k=*x';k<=*y*;k++)

if(i!=k&&j!=k)

if(i!=,x'&&k!=,x,&&k!='z')

printf("a-->%c\nb-->%c\nc--〉%c”,i,j,k);

)

)

)

)

}

)

returnO;

)

12.有5个人坐在一起,问第五个人多少岁?他说比第4个人大2

岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说

比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一

个人,他说是10岁。请问第五个人多大?

#include<stdio.h>

intfac(intn);

intmain()

inta=5;

printf("di5gerendedesuishushi%d\n",fac(a));

returnO;

)

intfac(intn)

if(n==l)

returnlO;

)

else

return2+fac(n-1);

)

13.输入某三角形的三个边的长度,判断出这是个什么三角形(等腰、

等边、任意,或不能构成)。

#include<stdio.h>

intmain()

inta,b,c;

printf("pleaseenterabc\n");

scanf("%d%d%d",&a,&b,&c);

//printf("%d\n%d\n%d\nn,a,b,c);

if((a+b<=c)||(a-b>=c))

printf("bunenggouchengsanjiaoxing\n");

}

elseif(a==b&&b==c)

printf("dengbiansanjiaoxing\n");

returnO;

)

14.输入10个数,分别统计其中正数、负数、零的个数。

#include"stdio.h"

main()

inta[10],i;

sl=O;

s2=0;

s3=0;

printf(”请输入10个数:\n");

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

scanf("%d",&a[i]);

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

if(a[i]<0)

sl++;

if(a[i]==0)

s2++;

if(a[i]>0)

s3++;

}

printf("负数为%d个,零为%d个,正数为%(1个“,sl,s2,s3);

)

15.先随机产生N个三位自然数输出,然后再输出其中同时是3、5、

7倍数的数。(设N为100)

#include"stdio.h"

#include"time.h"

main()

inta,c,n;

srand((unsigned)time(NULL));

for(a=0;a<100;a++)

c=rand()%1000;

if(c>=l00&&c%3==0&&c%5==0&&c%7==0)

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

)

)

)

16.用for编程找出100~200中的完全平方数。

#include<stdio.h>

intmain()

inti=10;

intb;

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

b=i*i;

if(b<=200&&b>=100)

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

)

)

returnO;

)

17.从终端输入三个正实数,判断这三个数能否构成直角三角形。

#include"stdio.h"

main()

inta,b,c;

printf("请输入三个正实数:\n");

scanf("%d%d%d",&a,&b,&c);

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

printf("这是直角三角形!\n");

else

printf("不构成直角三角形!\n");

18.输入一行字符,分别统计出其中英文字母、空格、数字和其它

字符的个数。

#include<stdio.h>

intmain()

into;

intnword=0;

intnspace=O;

intnother=0;

intnnum=0;

while((c=getchar())!=EOF)

if((c>=*a*&&c<=*z')||(c<=*Z'&&c>=,A'))

nword++;

}

elseif(c〉='0*&&c<=*9*)

nnum++;

}

elseif(c==**)

nspace++;

}

else

nother++;

}

)

printf("space:%d\n",nspace);

printf("num:%d\n",nnum);

printf("other:%d\n",nother);

printf("word:%d\n",nword);

returnO;

)

19.输入一个字串,判断它是否是对称串。如“abcdcba〃是对称串,

不是。

#include<stdio.h>

intpanduan(char*s);

intmain()

chars[500];

printf("pleaseenterastring:\n");

scanf("%s",s);

panduan(s);

returnO;

}

intpanduan(char*s)

char*p=s;

char*q=s;

while(*q!='\0')

q++;

)

q一;

while((q-p)>1)

if(*p!=*q)

printf("buduichen!\n");

returnl;

}

q——;

p++;

printf("duichen");

returnO;

20.随机产生N个大写字母输出,然后统计其中共有多少个元音字符。

(设N为50)

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

#defineNlO

intisyuan(chars);

intmain()

chars[N];

inti;

intcount=0;

charzimubiao*G',

1!1

'H','I,J','K,'L','M'z'N','O','P','Q','S','

T\

'U','V','W,'X','Y','Z');

srand(time(NULL));

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

s[i]=zimubiao[rand()%26];

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

printf(n%c",s[i]);

printf("\n");

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

if(isyuan(s[i]))

count++;

}

}

printf(ngongyouyuanyin%dge\n",count);

returnO;

)

intisyuan(chars)

intj;

charyuanyinbiao[]={*A*,*E*,*1*,'O',*U*};

for(j=0;j<5;j++)

if(s==yuanyinbiao[j])

returnl;

}

)

returnO;

)

21.找出三位自然数中的所有素数,要求判断x素数用自定义函数

data(x)实现。

#include<stdio.h>

intdata(intx);

intmain()

inti;

for(i=100;i<=999;i++)

if(data(i))

printf("%dshisushu\nn,i);

}

)

returnO;

)

//sushufanhuil,bushifanhuiO.

intdata(intx)

intj;

for(j=2;j<x;j++)

if((x%j)==0)

returnO;

}

)

returnl;

)

22.输出n行由''#〃组成的矩形,每行的个数为m个,其中n、m

由终端(键盘)输入。要求输出m个〃功能由函数satr(m)函数

实现。

#include<stdio.h>

voidsatr(intm);

intm,n;

intmain()

printf("qingshurumndezhi:\n");

scanf(n%dn,&m);

scanf("%d",&n);

satr(m);

returnO;

}

voidsatr(m)

inti,j;

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

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

printf("#");

}

printf("\n");

)

)

23.若ax2+bx+c=0有实根,则求之。

#include<stdio.h>

#include<math.h>

intmain()

floata,b,c,disc,xl,x2,p,q;

scanf("a=%f,b=%f,c=%f",&a,&bz&c);

disc=b*b-4*a*c;

if(disc<0)

printf("meiyoushigen");

)

else

p=-b/(2*a);

q=sqrt(disc)/(2*a);

xl=p+q;x2=p-q;

printf("\nxl=%5.2f\nx2=%5.2f\n",xl,x2);

}

returnO;

)

24.从键盘输入两个字串,判断它们是否相同。

#include<stdio.h>

intpanduan(char*,char*);

intmain()

chars[500];

chart[500];

printf("qingshurulianggezifuchuan\n");

scanf(n%s",s);

scanf("%s",t);

panduan(s,t);

returnO;

}

intpanduan(char*s,char*t)

while(*s!='\01)

if(*s++!=*t++)

printf(Hbuxiangtong\n");

returnl;

}

)

if(*t!='\0')

printf("buxiangtong\n");

returnl;

)

else

printf("xiangtong\n");

returnO;

)

)

25.从键盘输入两个字串,输出其中较短的那个字串,并输出它的长

度。

26.从键盘输入长度不等的两个字串,将短串连接于长串之后输出。

27.从键盘输入长度不等的两个字串,将长串连接于短串之后输出。

/*#include<stdio.h>//M25,26,27,29题

main(){

charsl[100];

chars2[100];

inti=O;

intj=0;

printf("请输入第1个字符串:\n");

scanf("%s"f&sl[i]);

printf(”请输入第2个字符串:\n");

scanf("%s",&s2[j]);

while(si[i]!='\0'){

i++;

)

while(s2[j]!='\0'){

j++;

}

if(i<j){

printf("长度短的是第一"个字符串:%s\n",si);

printf(”短的在前长的在后组成一个字符串

是:%s%s\n",slAs2);

printf(”长的的在前短的的在后组成一个字符串

是:%s%s\n",s2,si);

}

if(i>j){

printf("长度短的是第一个字符串:%s\n",s2);

printf(”长的的在前短的的在后组成一个字符串

是:%s%s\n",si,s2);

printf(”短的在前长的在后组成一个字符串

是:%s%s\n",s2,si);

)

}*/

28.随机产生N个两位自然数,降序排列后输出。(设N为20)

/*#include<stdio.h>//第28题随机数

#include<stdlib.h>

#include<math.h>

main(){

intizj,n,t,u,tt;

inta[20],b[20];

int*p;

srand((unsigned)time(NULL));

for(n=0;n<20;n++){

t=rand()%90+10;

a[n]=t;

//printf("%d",a[n]);

)

p=a;

printf("");

for(i=0;i<20;i++){

for(j=i;j<20;j++){

if(a[i]<a[j]){

tt=a[i];

a[i]=a[j];

a[j]=tt;

//printf("%d",a[i]);

}

}printf("%d\n",a[i]);

//printf("%d\n",a[i]);

)

}

29.从键盘输入两个字串,输出其中较长的那个字串,并输出它的长

度。

30.从键盘输入10个战士的身高,输出平均身高,并找出哪些身高

低于平均身高。

31.从键盘输入10个战士的身高,输出平均身高,并找出哪些身高

高于平均身高。

32.从键盘输入10个战士的身高,输出最高、最低的身高。

/*#inc1ude<stdio.h>//身高303132题

#include<stdlib.h>

#include<math.h>

main(){

inti,j,ttzsum=0;

intp;

inta[1000];

printf(“请输入10个人的身高:\n");

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

scanf("%d",&a[i]);

//printf("%d\n"za[i]);

)

for(j=0;j<10;j++){

sum=sum+a[j];

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

)

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

p=sum/10;

printf("平均身高是:%d\n",p);

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

for(j=i;j<10;j++){

if(a[i]<a[j]){

tt=a[i];

a[i]=a[j];

a[j]=tt;

//printf("%d",a[i]);

)

}

//printf;

}

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

if(a[i]<p)

printf("小于平均身高的是犯"",a[i]);

)

elseif(a[i]==p)

printf("等于平均身高的是%€1"",且[:1]);

)

else

printf("大于平均身高的是%(1"",a[i]);

}

printf("最高的是%d\n",a[0]);

printf("最爱的是%d\n”,a[9]);

}

*/

33.''百钱百鸡〃问题。百钱买百鸡,鸡翁一值钱三,鸡母一值钱二,

鸡雏三值钱一,问鸡翁、鸡母、鸡雏各几何?

/*#include<stdio.h>//第33题

#include<stdlib.h>

#include<math.h>

main(){

intxj,mj,gj,x,m,g;

for(xj=0;xj<100;xj++){

for(mj=0;mj<100;mj++){

for(gj=0;gj<100;gj++)

if((xj+mj+gj==100)&&(xj+mj*6+gj*9==300)){

printf("小鸡:%d母鸡:%d公鸡:%d\n",xj,mj,gj);

//x=xj;g=gj;m=mj;

}

)

}

//printf("小鸡:%d母鸡:%d公鸡:%d\n",x,m,g);

}*/

34.有三个小孩,一个比一个大2岁,已知其年龄之和为39,问这

三个小孩各几岁?

/*#include<stdio.h>//年龄34题

#include<math.h>

main()

into;

c=(39-6)/3;

printf("年龄最小的是:%d;年龄最大的是:%d;另一个

是:%d\n",c,c+4,c+2);

}*/

/*#include<stdio.h>//面积体积35题

#include<math.h>

intchang,kuan,gaozv,s;

changfangti(intchang,intkuan,intgao)

//ints,v;

//printf("请输入长,宽,高:\n");

//scanf("%d%d%d",&chang,&kuan,&gao);

v=chang*kuan*gao;

s=(chang*kuan+chang*gao+kuan*gao)*2;

printf("体积是:%d表面及是:%d\n",v,s);

}

main()

printf("请输入长,宽,高:\n");

scanf("%d%d%d",&chang,&kuan,&gao);

changfangti(chang,kuan,gao);

)

35.键盘输入长方体的长宽高1、w、h,求其体积及表面积。要求用

自定义函数val(l,w,h)计算长方体的体积和表面积,计算结果使

用全局变量带回主函数。

/*#include<stdio.h>//面积体积35题

#include<math.h>

intchang,kuan,gao,vzs;

changfangti(intchang,intkuan,intgao)

//ints,v;

//printf("请输入长,宽,高:\n");

//scanf("%d%d%d",&chang,&kuan,&gao);

v=chang*kuan*gao;

s=(chang*kuan+chang*gao+kuan*gao)*2;

printf("体积是:%d表面及是:%d\n'\v,s);

}

main()

printf("请输入长,宽,高:\n");

scanf("%d%d%d",&chang,&kuan,&gao);

changfangti(chang,kuan,gao);

)

*/

36.计算:1/2+1/4+……+l/n,设n是由键盘输入的正偶数。

/*#include<stdio.h>//36偶数

#include<math.h>

main()

doublen;

doublesum=0;

printf("请输入偶数n=");

scanf("%lf",&n);

while((n-2)>-l)

//doublesum=0;

sum=sum+(1/n);

n=n-2;

//printf("%lf\n",sum);

}

printf("偶数之和是:%lf\n",sum);

}

37.计算:1/1+1/3+……+l/n,设n是由键盘输入的正奇数。

#include<stdio.h>//37奇数

#include<math.h>

main()

doublen;

doublesum=0;

printf("请输入奇数数n=");

scanf("%lf",&n);

while((n-2)>-2)

//doublesum=0;

sum=sum+(1/n);

n=n-2;

//printf("%lf\n",sum);

}

printf("奇数数之和是:%lf\n",sum);

}

38.计算:1/2-2/3+3/4-4/5……,前100项。

/*

*test38.c

*

*Createdon:2011-4-25

*Author:sky

*/

#include<stdio.h>

main(){

inti;

floatresult=0,d=l;

for(i=l;i<10;i++){

result+=i*d/(i+1);

d=-d;

printf("%f",result);

//printf("aa\n");

)

printf("结果是:%f\n",result);

)

39.有一个数组{1,4,80,23,47,76,14,52}。现输入一个数,要

求按原来的规律将它插入数组中并从大到小输出

/*

*39.c

*

*Createdon:2011-4-28

*Author:ocean

*/

#include<stdio.h>

main(){

inta[8]={1,4,80,23,47,76,14,52};

inti,j,t=0,tl=0Anum;

for(i=0;i<8;i++){

for(j=i;j<8;j++){

if(a[i]<a[j]){

t=a[j];

a[j]=a[i];

a[i]=t;

)

}

)

for(i=0;i<8;i++){

printf("%d",a[i]);

)

printf("输入要插入的数:;

scanf("%d",&num);

for(i=0;i<8;i++){

if(a[i]<num){

t=a[i];

a[i]=num;

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

for(j=i+l;j<=8;j++){

tl=a[j];

a[j]=t;

t=tl;

}

break;

}

)

putchar(*\n*);

for(i=0;i<8;i++){

printf("%d",a[i]);

)

putchar(*\n*);

}

40.公安人员审问四名窃贼嫌疑犯。已知,这四人当中仅有一名是窃

贼,还知道这四人中每人要么是诚实的,要么总是说谎的。在回答公

安人员的问题中:甲说''乙没有偷,是丁偷的〃,乙说''我没有偷,是

丙偷的〃,丙说''甲没有偷,是乙偷的〃,丁说''我没有偷〃。请根据这

四人的答话判断谁是盗窃者。

#include<stdio.h>

main(){

charsteal=*A,;

intflag=0;

for(steal;steal<=*D*;steal++){

flag=((steal!=1B*)==(steal==*D*))+((steal!=*B

)==(steal

==*C*))+((steal!=*A*)==(steal=='B,))+(steal!=,

D');

if(flag==4){

printf("%c\n",steal);

}

)

)

41.求s=a+aa+aaa+aaaa+......+aa...a的值,其中a是1~9

之间的一个数字,表达式项数从键盘输入(设不超过10项)。例如

2+22+222+2222+22222(此时共有5个数相加),几个数相加由键

盘控制。

//*

*test41.c

*

*Createdon:2011-4-27

*Author:sky

*

#include<stdio.h>

main(){

inta[10];

int*p;

p=a;

inti,numl,num2,sum;

sum=0;

printf("请输入基数:\n");

scanf("%d",&numl);

printf("请输入项数:\n");

scanf("%d",&num2);

*p=numl;

for(i=0;i<num2;i++){

//*(p+i+1)=a[i]*10+numl;

*(p+i+1)=*(p+i)*10+numl;

printf("%d\t",★(p+i));

)

for(i=0;i<num2;i++){

sum+=*(p+i);

)

printf("和等于%d\n”,sum);

)

42.设N是一个四位数,它的9倍恰好是其反序数,求N。反序数就

是将整数的数字倒过来形成的整数。例如:1234的反序数是4321。

/*

*42.c

*

*Createdon:2011-4-28

*Author:ocean

*/

#include<stdio.h>

main(){

intn=O,m=0;

for(n=10000;n>=1000;n--){

m=n*9;

if((n%10==m/1000)&&(n/10%10==m/100%10)&&(n/100

%10==m/10%10)&&(n/1000==m%10)){

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

}

)

)

43.爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,

则最后剩一阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则

最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,最后

才正好一阶不剩。请问这条阶梯至少有多少阶?

/*

*43.c

*

*Createdon:2011-4-28

*Author:ocean

*/

#include<stdio.h>

main(){

inti;

for(i=0;;i+=7){

if(i%2==l&&i%3==2&&i%5==4&&i%6==5&&i%7==0){

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

break;

)

)

)

44.输入任意一行字符,降序排列之。

/*

*44.c

*Createdon:2011-4-28

*Author:ocean

*

#include<stdio.h>

main(){

chara[1000];

char*p=a;

char*q;//swap

chartemp;

printf("输入一个字符串:”);

scanf("%s",p);

for(;*p!=1\01;p++){

for(q=p;*q!=,\0,;q++){

if(*p<*q){

temp=*q;

*q=*p;

*p=temp;

)

}

)

printf("%s",a);

}

45.输入一行字符串,按如下规则加密:如果是英文字母则大写变小

写、小写变大写,对非英文字符则保持不变。试写加密程序。

/*

*45.c

*

*Createdon:2011-4-28

*Author:ocean

*

#include<stdio.h>

main(){

chara[1000];

char*p;

p=a;

printf("输入字符串:\n");

scanf(n%s",p);

for(;*p!=*\0*;p++){

if(*p>=*A*&&*p<=*Z*){

*p+=32;

}elseif(*p>=*a*&&*p<=1z*){

*p-=32;

}

)

printf("\n\n力口密后:%s\n”,a);

}

46.输入一行小写英文字母,按如下规则加密:a—c、b-d、…、x—z、

y-a、z-b,试写加密程序。

/*

*46.c

*

*Createdon:2011-4-28

*Author:ocean

*

#include<stdio.h>

main(){

chara[1000];

char*p;

p=a;

printf("输入字符串:\n");

scanf(n%s",p);

for(;*p!=*\0*;p++){

if(*p==*y1||*p==*z*){

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论