C语言题目分享8

  • Post author:
  • Post category:其他


10. 写一个程序根据从键盘输入的里氏强度显示地震的后果。根据里氏强度地震的后果如下:

里氏强度 后果

小于4 很小

4.0(包括)到5.0(不包括) 窗户晃动

5.0(包括)到6.0(不包括) 墙倒塌;不结实的建筑物被破坏

6.0(包括)到7.0(不包括) 烟囱倒塌;普通建筑物被破坏

7.0(包括)到8.0(不包括) 地下管线破裂;结实的建筑物也被破坏

大于等于8.0 地面波浪状起伏;大多数建筑物损毁

**输入格式要求:”%lf” 提示信息:”请输入地震的里氏强度: ”

**输出格式要求:

“本次地震后果:很小!”

“本次地震后果:窗户晃动!”

“本次地震后果:墙倒塌;不结实的建筑物被破坏!”

“本次地震后果:烟囱倒塌;普通建筑物被破坏!”

“本次地震后果:地下管线破裂;结实的建筑物也被破坏!”

“本次地震后果:地面波浪状起伏;大多数建筑物损毁!”

#include<stdio.h>

voidmain()

{

printf(“请输入地震的里氏强度: “);

double l;

scanf(“%lf”,&l);

int a=(int) l;(浮点数转换)

switch(a)

{

case 0:

case 1:

case 2:

case 3:printf(“本次地震后果:很小!”);

break;

case 4:printf(“本次地震后果:窗户晃动!”);

break;

case 5:printf(“本次地震后果:墙倒塌;不结实的建筑物被破坏!”);

break;

case 6:printf(“本次地震后果:烟囱倒塌;普通建筑物被破坏!”);

break;

case 7:printf(“本次地震后果:地下管线破裂;结实的建筑物也被破坏!”);

break;

default:printf(“本次地震后果:地面波浪状起伏;大多数建筑物损毁!”);

}

}


(新)14. 输入一些整数,编程计算并输出其中所有正数的和,输入负数时不累加,继续输入下一个数。输入零时,表示输入数据结束。要求最后统计出累加的项数。


**输入格式要求:”%d” 提示信息:”Input anumber:”


**输出格式要求:”sum = %d,count = %d\n”


程序运行示例如下:


Input a number:1


Input a number:2


Input a number:3


Input a number:-4


Input a number:4


Input a number:5


Input a number:0


sum = 15, count = 5

#include<stdio.h>

void main()

{int i,n,sum;

sum=0;

for(i=0;;i++)

{scanf(“%d”,&n);

printf(“Input a number:”);

if(n>0)

{sum+=n;}

else if(n<0)

{i=i-1;continue;}

else

{break;}

}

printf(“sum = %d, count =%d\n”,sum,i);

}


15. 用下列公式求pi的近似值,直到最后一项的绝对值小于1e-4为止:



π

4

=1−

13

+

15



17

+…


**输入:无


**输出格式要求:”pi=%10.6f\n”


程序运行示例如下:


pi= 3.141793

#include<stdio.h>

#include<math.h>

void main()

{

float s,pi,n,t;

s=1;pi=1;n=1;t=1;

do{

n+=2;

s=-s;

t=s/n;

pi+=t;

}while(fabs(t)>=1e-4);

pi*=4;

printf(“pi=%10.6f\n”,pi);

}


16.

一辆卡车违反了交通规则,撞人后逃逸。现场有三人目击该事件,但都没有记住车号,只记住车号的一些特征。甲说:车号的前两位数字是相同的;乙说:车号的后两位数字是相同的,但与前两位不同;丙是位数学家,他说:4位的车号正好是一个整数的平方。现在请根据以上线索帮助警方找出车号以便尽快破案。

**输出格式要求:”The numberis:%d\n”

#include<stdio.h>

#include<math.h>

void main()

{

inta,b,c;

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

{

for(b=0;b<=9;b++)

{

c=a*1100+b*11;

if(c==(int)sqrt(c)*(int)sqrt(c)&&a!=b)

break;

else continue;

}

if(b!=10) break;

}

printf(“The number is:%d\n”,c);

}



版权声明:本文为IUmywife原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。