// P19 二、1) 能够对给定的任意的三个数值,视为三角形三个边长,求该三角形的面积。
#include
#include
main()
{
double a,b,c,p,s;
printf("Please input a、b、c:\n\n");
scanf("%lf%lf%lf",&a,&b,&c);
if( a+b>c
&& a+c>b
&& b+c>a )
{
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("Area is %.3f
\n\n",s);
}
else
{
printf("a,b,c cannot construct
a triangle! \n\n");
exit(0);
}
}
// P19 二、2) 给定一个三位整数(100~999),求它的每一位数的立方和。
#include
#include
main()
{
int a,n100,n10,n1,s3;
do
{
printf("Please input
a(100~999):\n\n");
scanf("%d",&a);
}while(a<100||a>999);
n100=a/100;
n10=a/10%10;
n1=a%10;
s3=pow(n100,3)+pow(n10,3)+pow(n1,3);
printf("The sum of every digit of a is %d
\n\n",s3); }
// P19 二、3) 给定一个小写字母,转换成大写字母。
#include
main()
{
char c1,c2;
do
{
printf("Please input a lower
letter (a~z): \n");
c1=getchar();
}while(c1'z');
c2=c1-32;
putchar(c2);
printf("The correspongding upper letter (A~Z)
is: \n");
putchar('\n');
putchar('\n'); }
// P19 二、4)
给定三个整数m、a、b,请写出判断m是否在a和b之间的逻辑表达式,并且编写程序打印出这个逻辑表达式的值。
#include
main()
{
int m,a,b;
int lv;
printf("Please input a,b,m:\n\n");
scanf("%d%d%d",&a,&b,&m);
// lv=(a-m)*(b-m);
lv=(m>=a&&m<=b);
// if(lv<=0)
if(lv==1)
printf("lv=lv=(a-m)*(b-m)=%d,
which indicates that m is between a and b. \n\n",lv);
else
printf("lv=lv=(a-m)*(b-m)=%d,
which indicates that m is not between a and b. \n\n",lv);
}
// P19 二、5) 计算表达式a+=a-=a*a的值,并打印出来。假设程序运行时,输入的a的值是3.
#include
main()
{
int a,lv;
printf("Please input a:\n\n");
scanf("%d",&a);
lv=(a+=a-=a*a);
printf("lv=(a+=a-=a*a)=%d. \n\n",lv);
}
// P19 二、6)
编写一个C语言程序,i=8输出下列个表达式:i,i++,++i,--i,i--,-i++,-i--的值。
#include
main()
{
int i;
printf("please input i:\n\n");
scanf("%d",&i);
printf("i=%d \n",i);
printf("i++=%d \n",i++);
printf("++i=%d \n",++i);
printf("--i=%d \n",--i);
printf("i--=%d \n",i--);
printf("-i++=%d \n",-i++);
printf("-i--=%d \n",-i--);
}