加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C语言作业题

(2009-04-10 14:57:55)
标签:

c

教育

分类: C语言

1、从键盘输入圆的半径R,计算并输出圆的周长和面积。

 

#include <stdio.h>

#define PI 3.1415926

void main()

{

    float r,l,s;

    printf("Please input r = ");
    scanf("%f",&r);

    l=2*PI*r;
    s=PI*r*r;

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

    getch();

}

 

2、从键盘输入任意一个十六进制的负整数,以输入的形式输出。例如:输入-FA98,输出-FA98。

#include  <stdio.h>


void main ( )
{
   int a;

   printf("Please input 16bit:a = ");
   scanf("-%X",&a);
   printf("a = -%X\n",a);

   getch();
}

3、已知一元二次方程ax2+bx+c=0,编一程序当从键盘输入a,b,c的值后,计算X的值。

 

#include <stdio.h>


void main()
{

    float a,b,c,x1,x2;

    printf("Please input a,b,c.\n");
    printf("a = ",a);
    fflush(stdin);
    scanf("%f",&a);

    printf("b = ",b);
    fflush(stdin);
    scanf("%f",&b);

    printf("c = ",c);
    fflush(stdin);
    scanf("%f",&c);

    printf("result:%fx^2+%fx+%f.\n",a,b,c);

    if ((b*b-4*a*c)>0){
            x1=(-b+sqrt(b*b-4*a*c))/(2*a);
            x2=(-b-sqrt(b*b-4*a*c))/(2*a);
            printf("difference:\nx1 = %f \nx2 = %f\n",x1,x2);
    }
    else if ((b*b-4*a*c)==0){
       
        x1=-b/(2*a);
        printf("same:'nx1 = x2 = %f\n",x1);

    }
    else if((b*b-4*a*c)<0){

        x1=b/(2*a);
        x2=sqrt(4*a*c-b*b)/(2*a);
        printf("another:\nx1 = %f \nx2 = %f",x1,x2);

    }
    else
       
        printf("OK\n");


    getch();

}

暂时完成这样,可以运行,这是在TC下编辑的。

修改:

 

#include <stdio.h>
#include <math.h>

void main()

{

 double a,b,c,x1,x2;
 
 printf("请输入a,b,c: \n");
 printf("a = ");
 scanf("%lf",&a);
 printf("a = %lf\n",a);

 printf("b = ");
 scanf("%lf",&b);
 printf("b = %lf\n",b);

 printf("c = ");
 scanf("%lf",&c);
 printf("c = %lf\n",c);

 printf("sss:%lfx^2+%lfx+%lf=0\n",a,b,c); 

 if((b*b-4*a*c)>0){

  x1=(-b+sqrt(b*b-4*a*c))/(2*a);
        x2=(-b-sqrt(b*b-4*a*c))/(2*a);
        printf("有两个不同的根:\nx1 = %f \nx2 = %f\n",x1,x2);
 
  }
     else if ((b*b-4*a*c)==0){
       
        x1=-b/(2*a);
        printf("相同的根:'nx1 = x2 = %f\n",x1);

  }
  else if((b*b-4*a*c)<0){

        x1=b/(2*a);
        x2=sqrt(4*a*c-b*b)*(1/2)/(2*a);
        printf("异同:\nx1 = %f \nx2 = %f\n",x1,x2);

  }
 else printf("ok\n");
 
}

 

4、编一程序判断输入整数的正负性和奇偶性。

 

#include <stdio.h>

void main()

{

 int a;

 printf("输入整数a : ");
 scanf("%d",&a);

 if (a>0){
 
  if(a%2==0)
   printf("a = %+d a是偶数\n",a);
  else
   printf("a = %+d a是奇数\n",a);
 }

 else if(a==0){

  printf("a = %d a是零\n",a);
 
 }

 else if(a<0){
 
  if(a%2==0)
   printf("a = %+d a是偶数\n",a);
  else
   printf("a = %+d a是奇数\n",a);
 }

 else printf("您输入错误");

}


5、编程判断输入数据的符号属性。sign=1   x>0      sign=0   x=0        sign=-1   x<0    输入x,打印出sign的值。

 

#include <stdio.h>

void main()

{

 int x;

 printf("请输入x = ");
 scanf("%d",&x);

 if(x>0)
  
  printf("sign = 1\n");

 else if(x==0)

  printf("sign = 0\n");

 else if(x<0)

  printf("sign = -1\n");

 else

  printf("输入错误!");
}

 

6、输入任意三个数num1,num2,num3,按从小到大的顺序排序输出。

 

#include <stdio.h>

void main()
{

 int num1,num2,num3;

 printf("请输入三个数\nnum1 = ");
 scanf("%d",&num1);

 printf("num2 = ");
 scanf("%d",&num2);

 printf("num3 = ");
 scanf("%d",&num3);

 if(num1>num2){
 
  if(num3>num1)

   printf("%d %d %d\n",num3,num1,num2);

  else if(num3<num1){
  
   if(num3>num2)

    printf("%d %d %d\n",num1,num3,num2);

   else if(num3<num2)

    printf("%d %d %d\n",num1,num2,num3);

  }
 }

 else if(num2>num1){
 
  if(num3>num2)

   printf("%d %d %d\n",num3,num2,num1);

  else if(num3<num2){
  
   if(num3>num1)

    printf("%d %d %d\n",num2,num3,num1);

   else if(num3<num1)

    printf("%d %d %d\n",num2,num1,num3);

  }
 }

}

 

7、在屏幕上显示一张如下所示的时间表:

******Time******

   morning
   afternoon
   night
Please enter your choice;
操作人员根据提示进行选择,程序根据输入的时间序号显示相应的问候信息,选择1时显示"Good morning",选择2时显示"Good afternoon",选择3时显示"Good night",对于其他的选择显示"Selection error!",用switch语句编程实现。

 

#include <stdio.h>

void main()

{

 int a;

 printf("******Time******\n1    morning\n2    afternoon\n3    night\nPlease enter your choice;\n");
 scanf("%d",&a);

 switch(a){

 case 1:
  printf("Good morning\n");
  break;

 case 2:
  printf("Good afternoon\n");
  break;

 case 3:
  printf("Good night\n");
  break;

 default:
  printf("Selection error!\n");
  break;
 }

}

8、输入一个年份和月份,打印出该月份有多少天(考虑闰年),用switch语句编程。


#include <stdio.h>

void main()

{

 int year,month;

 printf("请输入年份和月份\nyear = ");
 scanf("%d",&year);
 
 printf("请输入月份\nmonth = ");
 scanf("%d",&month);

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

   printf("您输入的年份是闰年!\n");
   
   switch(month){
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
     printf("date = 31天\n");
     break;
    case 2:
     printf("date = 29天\n");
     break;
    case 4:
    case 6:
    case 9:
    case 11:
     printf("date = 30天\n");
     break;
    default:
     printf("error");
     break;
   }
  }

  else{

   printf("您输入的年份不是闰年!\n");

   switch(month){
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
     printf("date = 31天\n");
     break;
    case 2:
     printf("date = 28天\n");
     break;
    case 4:
    case 6:
    case 9:
    case 11:
     printf("date = 30天\n");
     break;
    default:
     printf("error");
     break;
   }
  }

 }

}


 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有