第五章 课本题目

例 5.1 使用单分支条件结构输出两个数的最大值。

#include<stdio.h>
int main()
{
int a,b,max;
scanf("%d,%d",&a,&b);
if(a>b) max=a;
if(a<=b) max=b;
printf("max=%d\n",max);
return 0;
}

例 5.2 用双分支条件语句求最大值。

#include<stdio.h>
int main()
{
int a,b,max;
scanf("%d,%d",&a,&b);
if(a>b) max=a;
else max=b;
printf("max=%d\n",max);
return 0;
}

 例5.3 用三元运算符求最大值。

#include<stdio.h>
int main()
{
    int a,b,max;
    printf("Input a,b\n");
    scanf("%d %d",&a,&b);
    max=a>b? a:b;
    printf("%d\n",max);
    return 0;
 } 

例 5.4 计算一元二次方程。分a=0,b^2-4ac>0,<0,=0几种情况。

#include<stdio.h>
#include<math.h>
int main()
{
    double a,b,c,d,x1,x2;
    scanf("%lf %lf %lf",&a,&b,&c);
    d=b*b-4*a*c;
    if(a==0)
    {
        printf("这不系一元二次方程!\n");
    }
    else if(d<0)
    {
        printf("冇实数解!\n");
    }
    else if(d==0)
    {
        printf("有唯一解!\n");
        x1=(-b)/(2*a);
        printf("%lf\n",x1);
    }
    else
    {
        printf("有俩解!\n");
        x1=(-b+sqrt(d))/(2*a);
        x2=(-b-sqrt(d))/(2*a);
        printf("%lf\n%lf\n",x1,x2);
    }
    return 0;
 }

例 5.5 计算器。两个数输入表达式计算。

#include<stdio.h>
int main()
{
double a,b,c;
char x;
scanf("%lf%c%lf",&a,&x,&b);
switch(x)
{
    case '+':
        c=a+b;
        break;
    case '-':
        c=a-b;
        break;
    case '*':
        c=a*b;
        break;
    case '/':
        c=a/b;
        break;
    default:
        break;
}
printf("%lf",c);
    return 0;
 } 

例 5.6 修改5.5的程序,允许操作数和运算符之间可以加上任意多个空格。

scanf("%lf %c%lf",&a,&x,&b); //%c前面有一个空格

猜你喜欢

转载自www.cnblogs.com/SlowIsFast/p/10404025.html