计算机.docx

上传人:b****8 文档编号:9366216 上传时间:2023-02-04 格式:DOCX 页数:19 大小:29.08KB
下载 相关 举报
计算机.docx_第1页
第1页 / 共19页
计算机.docx_第2页
第2页 / 共19页
计算机.docx_第3页
第3页 / 共19页
计算机.docx_第4页
第4页 / 共19页
计算机.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

计算机.docx

《计算机.docx》由会员分享,可在线阅读,更多相关《计算机.docx(19页珍藏版)》请在冰豆网上搜索。

计算机.docx

计算机

1、打印杨辉三角形(要求打印10行);

#include

main()

{inti,j,feng[10][10]={0};

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

{feng[i][0]=1;}

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

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

{

feng[i][j]=feng[i-1][j-1]+feng[i-1][j];

}

}

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

{for(j=0;j

{

printf("%5d",feng[i][j]);

}

printf("\n");

}

}

2、求二维数组中最大元素值(或最小元素值)及其行列号;

#include

main()

{intgqf[2][3]={{1,8,3},{4,5,6}};

inti,j,x=0,y=0,max=gqf[0][0];

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

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

{if(max

{max=gqf[i][j];

x=i,y=j;

}

}

}

printf("最大值是:

%5d,行列号分别为%5d,%5d\n",max,x,y);

}

3、将二维数组行列元素互换,存到另一个数组中;

#include

main()

{

inta[2][3]={{1,2,3},{4,5,6}};

intb[3][2],i,j;

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

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

{printf("%-4d",a[i][j]);

b[j][i]=a[i][j];

}

printf("\n");

}

printf("\n");

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

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

{printf("%-4d",b[i][j]);}

printf("\n");

}

}

4、输入三个学生、五门课程的成绩,分别存放在3×6矩阵的前五列上,计算每个学生的平均成绩后,存放在该数组最后一列的对应行上。

#include

main()

{inti,j,sum;

floatzcc[3][6];

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

{

printf("请输入第%d名同学的五门成绩",i+1);

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

{

scanf("%f",&zcc[i][j]);

}

}

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

{

sum=0;

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

{

sum+=zcc[i][j];

}

zcc[i][5]=sum*(1.0/5);

}

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

{

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

{

printf("%10f",zcc[i][j]);

}

printf("\n");

}

}

5、对长度为7个的字符串,除首尾字符外,将其余5个字符按ASCII码升序排序。

如:

BdsinAD,排序结果:

BAdinsD。

(演示:

用选择法或冒泡法)。

#include

#include

main()

{charqing[8]={"BdsinAD"},feng[8];

inti,j,k,guo;

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

{

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

{

if(qing[j]>qing[j+1])

{

guo=qing[j];

qing[j]=qing[j+1];

qing[j+1]=guo;

}

}

}

puts(qing);

}

6、把输入的字符串逆序排列,如输入ABCDE,输出为EDCBA。

#include

#include

main()

{charguo[50],qing[50];

inti,k;

printf("请输入一个字符串:

");

gets(guo);

k=strlen(guo);

for(i=0;i

{qing[i]=guo[k-i-1];}

qing[k]=guo[k];

puts(qing);

}

7、判断m是否素数?

#include

main()

{intm,n,i,k=0;

printf("请输入一个数字:

");

scanf("%d",&m);

for(i=1;i

{

if(i>1&&i

{n=m%i;

if(n!

=0)

{k++;}

}

}

if(k==m-2)

printf("此数是素数\n");

elseif(m==1)

printf("此数是素数\n");

else

printf("此数不是素数\n");

}

8、选择法排序。

#include

voidmain()

{inta[5]={5,20,7,12,3};

inti,j,k,guo,c,d,e;

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

{

d=i;

for(k=i+1;k<=4;k++)

{if(a[k]

{d=k;}

}

if(d!

=i)

{

guo=a[i];

a[i]=a[d];

a[d]=guo;

}

}

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

{

printf("a[%d]=%-5d",e,a[e]);

}

printf("\n");

}

9、冒泡法排序。

#include

main()

{inta[5]={1,7,12,20,16},i,j,guo;

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

{

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

{

if(a[i]

{

guo=a[i];

a[i]=a[i+1];

a[i+1]=guo;

}

}

}

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

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

}

}

10、有一递推数列,满足f(0)=0,f

(1)=1,f

(2)=2,f(n)=f(n-1)+2f(n-2)f(n-3)(n>=3)。

使用数列编写程序,顺序打出f(0)到f(10)的值。

#include

main()

{intf[11],i;

f[0]=0;

f[1]=1;

f[2]=2;

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

{f[i]=f[i-1]+2*f[i-2]*f[i-3];}

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

{printf("%d,",f[i]);}

printf("\n");

}

11、请用户输入一个含有12个浮点数的一维数组,分别计算数组中所有的正数和以及所有的负数和。

#include

main()

{floatf[12],a=0,b=0;

inti;

printf("请输入十二个浮点型的数:

");

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

{scanf("%f,",&f[i]);}

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

{if(f[i]>0)

{a+=f[i];}

else

{b+=f[i];}

}

printf("正数和是:

%f,负数和是:

%f\n",a,b);

}

12、

编程实现求数列

…的所有大于等于0.000001的数据项之和,显示输出计算结果(运行结果:

s=2.999999);

#include

main()

{inti=1;

floatj,s=0;

for(j=1.0/2;j>=0.000001;j=((2*i-1)/2.0)*((1.0/(2*(i-1)-1))*j))

{s+=j;

i++;

}

printf("s=%f\n",s);

}

13、.把100~150之间的不能被3整除的数输出

#include

main()

{inta,b;

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

{b=a%3;

if(b!

=0)

{printf("%5d",a);}

}

}

14、计算公式t=1-1/2-1/3……-1/m的值。

例如:

若输入5,则应输出-0.283333;

#include

main()

{inti,j;

floatf=1;

printf("inputanumber:

");

scanf("%d",&i);

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

{f-=1.0/j;}

printf("f=%f",f);

}

15、打印九九乘法表。

#include

main()

{inti,j;

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

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

{printf("%d*%d=%-5d",j,i,j*i);}

printf("\n");

}

}

16、编程实现1~500之间的满足条件的解。

“除以3余1,除以5余2,除以7余3”。

(中国剩余定理:

“有物不知几何,三三数余一,五五数余二,七七数余三,问:

物有几何?

”)(运行结果:

52、157、262、367、472);

#include

main()

{inta,b,c,d;

for(a=1;a<=500;a++)

{b=a%3;

c=a%5;

d=a%7;

if((b==1&&c==2)&&d==3)

{printf("%5d",a);}

}

printf("\n");

}

17、教材P62三、编程题3;

(验证:

如n=2,结果1.833333;如n=5,结果11.450000)

#include

main()

{intn,i=1;

floatm=0;

printf("请输入一个整数,n=");

scanf("%d",&n);

while(i<=n)

{m=m+(i*i)/(i+1.0);

i++;

}

printf("所得结果是:

%f\n",m);

}

18、编写程序求出满足不等式1+2+3+…+n<500的最大n值及总和;

(运行结果:

n=31,sum=496)

#include

main()

{intn=1,m=0;

while(m<500)

{m+=n;

n++;

}

printf("n=%d,sum=%d\n",n-2,m-n+1);

}

19、编写程序,求1-3+5-7+9……-99+101的值;

(运行结果:

51.000000)

#include

main()

{inta=0,b=0,c=0,d=0;

floatm=0;

while((a<=25)&&(b<=25))

{m+=c-d;

a++;

b++;

c=2*(2*a-1)-1;

d=2*(2*b)-1;

}

printf("m=%f",m+c);

}

20、求

的值。

(请分别用while、dowhile和for语句来实现,运行结果:

47976.00)

21、输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。

然后输出最后得到的字符。

#include

main()

{charm;

scanf("%c",&m);

if(m>='A'&&m<='Z')

{m=m+32;

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

}

else

{printf("%c\n",m);

}

}

22、给出百分制成绩,要求输出成绩等级A、B、C、D、E。

90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

#include

main()

{intmark;

printf("inputthemarkofastudent(0

");

scanf("%d",&mark);

mark=mark/10;

if(mark==9)

printf("A\n");

elseif(mark==8)

printf("B\n");

elseif(mark==7)

printf("C\n");

elseif(mark==6)

printf("D\n");

else

printf("E\n");

}

23、模仿P45【例3-4】写程序,输入x,输出y值;

3*x+5(x>0)

y=0(x=0)

3*x-5(x<0)

#include

main()

{floatx;

printf("inputx=");

scanf("%f",&x);

if(x>0)

printf("y=%f\n",(3*x+5));

elseif(x==0)

printf("y=0\n");

else

printf("y=%f\n",(3*x-5));

}

24、由键盘输入三个整数分别赋给变量a、b、c,编写程序输出其中绝对值最大(或最小)的数;fabs(a)#include

#include

#include

intxmin(intx,inty,intz)

{intm;

if(x>y)

{if(z>x)m=z;

elsem=x;

}

else

{if(z>y)m=z;

elsem=y;

}

return(m);

}

main()

{inta,b,c,d,e,f,g;

printf("请输入三个整数\n");

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

d=fabs(a);e=fabs(b);f=fabs(c);

g=xmin(d,e,f);

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

}

25、编写程序输入三个整数,要求按由小到大(或由大到小)顺序输出;

#include

main()

{inta,b,c;

printf("请输入三个整数\n");

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

if(a>b)

{if(c>a)

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

else

{if(c>b)

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

else

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

}

}

else

{if(c>b)

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

else

{if(c>a)

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

else

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

}

}

}

26、练习、读懂第三章P44【例3-3】、P45【例3-4】、P46【例3-5】、P48【例3-6】;

27、编程实现从键盘给变量a,b分别输入整数,要求每个变量只能接受两位数,例如:

32和46,求两数的乘积并显示出32*46=1472。

输出时要求a,b占字符宽度3位,乘积占用5位显示。

#include

main()

{inta,b,c;

printf("请输入两个二位整数\n");

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

c=a*b;

printf("%3d,%3d,%5d\n",a,b,c);

}

28、编程实现用getchar函数从键盘得到一个字符,并用putchar函数输出这个字符(参考教材P32【例2-2】、【例2-3】)。

#include

main()

{inta;

printf("qingshuruyigezifu\n");

a=getchar();

putchar(a);

printf("\n");

}

29、设计一个程序,输入正五边形的边长的长度a,按公式

计算该五边形外接圆的半径,结果保留两位小数。

(验证:

如a=1时,R=0.85;a=2时,R=0.43)

#include

#include

main()

{floata,R;

scanf("%f",&a);

R=1/(2*a)*sqrt((10+2*sqrt(5))/5);

printf("半径=%4.2f\n",R);

}

30、设计一程序,输入空间中两点的坐标x1,y1,z1和x2,y2,z2,计算两点之间的距离。

#include

#include

main()

{floatx1,x2,y1,y2,z1,z2,L;

printf("请输入六个数\n");

scanf("%f,%f,%f,%f,%f,%f",&x1,&x2,&y1,&y2,&z1,&z2);

L=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)+(z2-z1)*(z2-z1));

printf("L=%f\n",L);

}

31、鸡兔同笼问题。

已知鸡、兔总头数为h,总脚数为f,求鸡兔各多少只?

(验证:

如h=12,f=40,则cock=4,rabbit=8;如h=16,f=40,则cock=12,rabbit=4)

#include

#include

main()

{inth,f,a,b;

printf("请输入两个数:

\n");

scanf("%d,%d",&h,&f);

a=(4*h-f)/2;b=(f-2*h)/2;

printf("cock=%d,rabbit=%d\n",a,b);

}

 

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

当前位置:首页 > 外语学习 > 英语考试

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

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