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) && (b<c))

printf("这三数从大到小的顺序为:%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))

C语言练习题精选
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<b)

{

temp=a;

a=b;

b=temp;

}

if (a<c)

{

temp=a;

a=c;

c=temp;

}

if (b<c)

{

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 (temp<c)

temp=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 (max<c)

max=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);

}

15. 使用当循环编程求出1到100的和

#include "stdio.h"

void main()

{

int i=1,s=0;

do

{

s=s+i;

i++;

}

while (i<=100);

printf("\ns= %d",s);

}

16. 从键盘输入10个实数,求出最大值

#include "stdio.h"

void main()

{

int i;

float x,max;

scanf("%f",&x);

max=x;

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

{

scanf("%f",&x);

if (max<x)

max=x;

}

printf("这十数中的最大值为:%f",max);

}

15. 从键盘输入10个整数,求出最小值

#include "stdio.h"

void main()

{

int i x,min;

scanf("%d",&x);

min=x;

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

{

scanf("%d",&x);

if (min>x)

min=x;

}

printf("这十整数中的最小值为:%d",min);

}

16. 从键盘输入10个整数,求出它们的平均值

#include "stdio.h"

void main()

{

int i a[10],s=0;

float aver=0.0;

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

{

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

s=s+i;

}

aver=s/10.0;

printf("这十整数中的平均值为:%f",aver);

}

17. 编程在屏幕上输出具有7行的正三角形



***

*****

*******

*********

***********

*************

#include "stdio.h"

void main()

{

int  i , j;

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

{

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

printf(" ");

for (j=0; j<=2*i+1; j++)

printf("*");

printf("\n");

}



18. 求出8的阶乘。

#include "stdio.h"

void main()

{

int  i ;

long p=1;

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

p=p*i;

printf("\n8的阶乘值为:%ld",p);



从键盘输入20个整数,求出不大于90所有数的和

#include "stdio.h"

void main()

{

int  i ,s=0,x;

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

{

scanf("%d",&x);

if (x<=90)

s=s+x;

}

printf("\n不大于90所有数的和:%d",s);



从键盘输入一个整数,判断这个数是否为素数

#include "stdio.h"

void main()

{

int  i ,x,flag=1;

scanf("%d",&x);

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

{

if ( x % i ==0)

{

flag=0;

break;

}

}

if (flag==1)

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

else

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



从键盘输入20个整数,求出它们的和

#include "stdio.h"

void main()

{

int  i ,s=0,x[20];

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

{

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

s=s+x[i];

}

printf("\n所有数的和:%d",s);



从键盘输入20个整数,求出它们的平均值及比平均值大的数

#include "stdio.h"

void main()

{

int  i ,s=0,x[20];

float aver=0.0;

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

{

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

s=s+x[i];

}

aver=s/20.0;

printf("平均为:%f\n",aver);

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

{

if (x[i]>aver)

printf("比平均大的数为:[%d]=%d\n",i,x[i]);

}



已知五个整数3,-5,8,2,9,求出最大值

#include "stdio.h"

void main()

{

int  i ,x[5]={ 3,-5,8,2,9},max;

max=x[0];

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

if (x[i]>max)

max=x[i];

printf("最大值为:%d\n",max);



从键盘输入20个整数,求出它们的最小值,并求最小值所在位置

#include "stdio.h"

void main()

{

int  i ,min,x[20],pos=0;

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

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

min=x[0];

pos=0;

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

if (x[i]>min)

{

min=x[i];

pos=i;

}

printf("最小值为:%d,最小值位置为:%d\n",min,pos);



已知五个整数3,-5,8,2,9,按从大到小的顺序排列起来

#include "stdio.h"

void main()

{

int   j ,k, t , b[5]={ 3,-5,8,2,9};

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

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

if (b[j]<b[k])

{

t= b[j];

b[j]= b[k];

b[k]=t;

}

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

printf("\n %d,",b[j]);

}

从键盘输入10个实数,按从大到小的顺序排列起来

#include "stdio.h"

void main()

{

int  i, j ,k;

float b[10],t;

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

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

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

for (k=j-1; k<10; k++)

if (b[j]<b[k])

{

t= b[j];

b[j]= b[k];

b[k]=t;

}

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

printf("\n %f,",b[j]);

}

某班有43名学生,某门考试结束后,请按10段统计出各分数段的人数

#include "stdio.h"

void main()

{

int   j , x[43],fragment[12];

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

scanf("%d",&x[j]);

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

fragment[x[j]/10]= fragment[x[j]/10]+1;

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

printf("\n各分数段人数为 %d", fragment[j]);

}

或者写成:

#include "stdio.h"

void main()

{

int   j , x[43],t ,fragment[12];

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

scanf("%d",&x[j]);

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



t= x[j]/10;

fragment[t]= fragment[t]+1;



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

printf("\n各分数段人数为 %d", fragment[j]);

}

从键盘上输入两个字符串,并将它们交换后输出

#include "stdio.h"

#include "string.h"

void main()

{

int   j ,k;

char ch1[81],ch2[81],t[81];

scanf("%s",ch1);

scanf("%s",ch2);

strcpy(t , ch1);

strcpy(ch1 , ch2);

strcpy( ch2 ,t);

printf("\n %s,%s\n,",ch1,ch2);

}

已知五个字符串"China","American","Japan","France","Australia",编程将它们按从小到大的顺序排列起来

#include "stdio.h"

#include "string.h"

void main()

{

int   j ,k;

char t[81], b[5][81]= {"China","American","Japan","France","Australia"};

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

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

if ( strcmp(b[j]>b[k]) )

{

strcpy(t , b[j]);

strcpy(b[j] , b[k]);

strcpy( b[k] ,t);

}

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

printf("\n %s,",b[j]);

}

  

爱华网本文地址 » http://www.413yy.cn/a/25101011/76734.html

更多阅读

转载 C语言:随机函数rand()、srand()、random()和rando

原文地址:C语言:随机函数rand()、srand()、random()和randomized()的区别和用法作者:猎空声明一点:在VC++中,没有random()和randomize()函数,只有rand()和srand()函数。其中,random()和randomize()函数的使用的方法分别与rand()和srand()

如何学习C语言编程

如何学习C语言编程——简介6 部分:准备工作 变量的使用 使用条件语句 学习循环语句 使用函数 不断学习诞生于上世纪70年代的C语言是一门古老的语言了, 但作为一门底层语言,时至今日它仍然非常强大。学习C语言能够为学习其他更复杂

转载 C语言贪心算法 c语言贪心算法

你真牛原文地址:C语言贪心算法作者:人鱼的泪贪心算法开放分类:算法、信息学贪心算法所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最

声明:《C语言练习题精选》为网友春风正得意分享!如侵犯到您的合法权益请联系我们删除