1. 判断三角形类型并输出该三角面积
#include<stdio.h>
#include<math.h>
#define T(x) (x)*(x)
int main()
{
float a,b,c,zc,mj;
scanf("%f %f %f",&a,&b,&c);
if(a*b>c||a*c>b||b*c>a)
{
if(a==b&&b==c&&c==a) printf("等边三角形");
else if(T(a)+T(b)==T(c) || T(a)+T(c)==T(b) || T(b)+T(c)==T(a)) printf("直角三角形");
else if(a==b||b==c||c==a) printf("等腰三角形");
else printf("普通三角形");
zc=(a+b+c)/2;
mj=sqrt(zc*(zc-a)*(zc-b)*(zc-c));
printf("\n该三角形面积为:%.2f",mj);
}else{
printf("不构成三角形");
}
return 0;
}
输出结果:
2.冒泡排序法
#include<stdio.h>
int main()
{
int t,a[10]={2,4,6,8,10,1,3,5,7,9};
for(int j=0;j<10;j++)
{
for(int k=0;k<9;k++)
{
if(a[k]>a[k+1])
{
t = a[k+1];
a[k+1] = a[k];
a[k] = t;
}
}
}
printf("\n");
for(int p=0;p<10;p++)
printf("%d ",a[p]);
return 0;
}
输出结果
3.十进制转换二、四、八、十六进制
#include<stdio.h>
#define N 2
int main()
{
void zh(int n);
int number;
printf("输入一个整数:");
scanf("%d",&number);
zh(number);
printf("\n运行结束");
return 0;
}
void zh(int num)
{
char arr[]="abcdef";
int temp=0;
if(num!=0)
{
temp=num%N;
num=num/N;
zh(num);
if(temp>=10&&N>10){
printf("%c",arr[temp-10]);
} else{
printf("%d",temp);
}
}
}
十进制转换结果
4.百钱买百鸡问题
#include<stdio.h>
int main()
{
int money, sum;
int gj,mj,xj;
for(gj=0;gj<20;gj++)
{
for(mj=0;mj<33;mj++)
{
for(xj=0;xj<100;xj++)
{
money = gj*5+mj*3+xj;
sum = gj+mj+xj*3;
if(money==100&&sum==100)
{
printf("公鸡买%d只,母鸡买%d只,小鸡买%d只\n",gj,mj,xj*3);
}
}
}
}
return 0;
}
输出结果
5.直接插入排序算法
#include<stdio.h>
int main()
{
int t,a[10]={2,4,6,8,10,1,3,5,7,9};
for(int i=1;i<10;i++)
{
t = a[i];
int j;
for(j=i-1;a[j]>t;j--)
{
a[j+1] = a[j];
}
a[j+1] = t;
printf("遍历第%d次结果为:",i);
for(int k=0;k<10;k++)
printf("%d ",a[k]);
printf("\n");
}
return 0;
}
输出结果
6.输入年月日求是今年的第几天
#include<stdio.h>
int main(){
int n,y,r,days;
bool flag;
printf("输入年月日:");
scanf("%d %d %d",&n,&y,&r);
if(n%4==0&&n%100!=0 || n%400==0){
flag = 1;
}else{
flag = 0;
}
days = r;
for(int i=1;i<y;i++){
if(i==4||i==6||i==9||i==11){
days += 30;
}else if(i==2){
if(flag){
days += 29;
}else{
days += 28;
}
}else{
days += 31;
}
}
printf("这是今年的第%d天",days);
return 0;
}
输出结果
|