C语言练习题精选
- 格式:doc
- 大小:84.00 KB
- 文档页数:13
C语言练习题精选 1. 从键盘上输入两个整数,求出它们的和 #include "stdio.h" void main() { int x,y,s; scanf("%d",&x); scanf("%d",&y); s=x+y; printf("\\n s=%d",s); } 2. 已知三角形的底和高,求出三角形的面积。 #include "stdio.h" void main() { int x,y; float s; x=4; y=5; s=x*y/2.0; printf("\\n s=%f",s); } 3. 从键盘上输入三角形的底和高,求出三角形的面积。 #include "stdio.h" void main() { int x,y; float s; scanf("%d",&x); scanf("%d",&y); s=x*y/2.0; printf("\\n s=%f",s); } 4. 已知三角形的三边长,求出三角形的面积。 #include "stdio.h" #include "math.h" void main() { int a,b,c; float p,s; a=3; b=4; c=5; p=(a+b+c)/2.0; s=sqrt(p*(p-a) *(p-b) *(p-c)); printf("\\n s=%f",s); }
5. 已知二元一次方程的三个系数,求方程的一个根。 #include "stdio.h" #include "math.h" void main() { int a,b,c; float root; a=3; b=4; c=5; root=(-b-sqrt(pow(b,2)-4*a*c))/(2.0*a); printf("\\n root=%f",root); }
6. 编程实现符号函数。当x <0 ,则sgn(x)=-1, 当x >0 ,则sgn(x)=+1, 当x =0 ,则sgn(x)=0 #include "stdio.h" void main() { float x; int y; scanf("%f",&x); if (x>0); y=1; if (x==0); y=0; if (x<0); y=-1; printf("\\n x=%f ,sgn(x)=%d",x,y); }
或者: #include "stdio.h" void main() { float x; int y; scanf("%f",&x); if (x>0); y=1; else if (x==0); y=0; else; y=-1; printf("\\n x=%f ,sgn(x)=%d",x,y); }
或者: #include "stdio.h" void main() { float x; int y; scanf("%f",&x); y=(x>0) ? 1: (x==0) ? 0 : -1; printf("\\n x=%f ,sgn(x)=%d",x,y); }
7. 从键盘上输入数字星期,在屏幕上显示英文星期。 #include "stdio.h" void main() { float x; scanf("%f",&x); switch( x ) { case 0 :printf("Sunday.\\n");break; case 1 :printf("Monday.\\n");break; case 2 :printf("Tuesday.\\n");break; case 3 :printf("Wednesday.\\n");break; case 4 :printf("Thursday.\\n");break; case 5 :printf("Friday.\\n");break; case 6 :printf("Saturday.\\n");break; default :printf("不存在这个星期!\\n"); } }
8. 从键盘输入三角形的三边长,判断出这三边能否构成三角形 #include "stdio.h" void main() { int a,b,c; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); if ((a+b>c) && (a+c)>b) && (b+c)>a ) printf("这三边能构成三角形!"); else printf("这三边不能构成三角形!"); }
9. 从键盘输入三个整数,将这三个数按从大到小的顺序排列起来 #include "stdio.h" void main() { int a,b,c,temp; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); if ((a>b) && (a>c) && (b>c)) printf("这三数从大到小的顺序为:%d,%d,%d",a,b,c); if ((a>b) && (a>c) && (bprintf("这三数从大到小的顺序为:%d,%d,%d",a,c,b); if ((b>a) && (b>c) && (a>c)) printf("这三数从大到小的顺序为:%d,%d,%d",b,a,c); if ((b>a) && (b>c) && (c>a)) printf("这三数从大到小的顺序为:%d,%d,%d",b,c,a); if ((c>b) && (c>a) && (a>b)) printf("这三数从大到小的顺序为:%d,%d,%d",c,a,b); if ((c>b) && (c>a) && (b>a)) printf("这三数从大到小的顺序为:%d,%d,%d",c,b,a); }
或者这样写: #include "stdio.h" void main() { int a,b,c,temp; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); if (a{ temp=a; a=b; b=temp; }
if (a{ temp=a; a=c; c=temp; } if (b{ temp=b; b=c; c=temp; } printf("这三数从大到小的顺序为:%d,%d,%d",a,b,c); }
10. 从键盘输入二个整数,求出最大值。 #include "stdio.h"
void main() { int a,b,temp; scanf("%d",&a); scanf("%d",&b); if (a>b) temp=a; else temp=b; printf("这二个整数最大值为%d",temp); }
11. 从键盘输入三个实数,求出最大值。 #include "stdio.h" void main() { float a,b,c,temp; scanf("%f",&a); scanf("%f",&b); scanf("%f",&c); if (a>b) temp=a; else temp=b; if (temptemp=c; printf("这三数最大值为%f",temp); }
12. 从键盘输入三个整数,在一个程序中既要求出最大值,还要求出最小值。 #include "stdio.h" void main() { int a,b,c,max,min; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); if (a>b) {max=a; min=b;} else {max=b;min=a;} if (maxmax=c; if (min>c) min=c; printf("这三个整数最大值为:%d,最小值为:%d.",max,min); }
13. 使用for循环编程求出1到100的和 #include "stdio.h" void main() { int i,s=0; for (i=1;i<=100;i++) s=s+i; printf("\\ns= %d",s); }
14. 使用当循环编程求出1到100的和 #include "stdio.h" void main() { int i=1,s=0; while (i<=100) { s=s+i; i++; } printf("\\ns= %d",s); }