C语言或者C++编写一个三角形问题

作者&投稿:政成 (若有异议请与网页底部的电邮联系)
c语言或者c++。判断三角形的形状~

#include

#include
using namespace std;
int zhijiao(int a,int b,int c);//判断是否为直角三角形
//需要完善,做出安全检查,以确定数据的准确性
void main()
{
int a, b, c;//保存三边长度
int index = 1;//记录第几个三角形
cout << "请输入三角形的数据:";
string s;//保存输入的字符串,约定为n个三角形,每个三角形为分号隔开,三角形内每边用逗号;"1,2,3;3,4,5"
cin >> s;
char* split = strtok((char*)s.c_str(), ";");//根据分号分割字符串
while (split != NULL)
{
//cout << split << endl;//检验分割的字符串
a = (int)split[0] - 48;//char型字符转数字,'0'转化为数字48
b = (int)split[2] - 48;
c = (int)split[4] - 48;
if (!(a + b < c || a + c < b || b + c < a))
{
if (a == b || a == c || b == c)
{
if (a == b && b == c)
cout << "a = " << a << ";b = " << b << ";c = " << c << "该三角形为等边三角形DB" <<endl;
else if (zhijiao(a, b, c))
cout << "a = " << a << ";b = " << b << ";c = " << c << "该三角形为等腰直角三角形DZY" <<endl;
else
cout << "a = " << a << ";b = " << b << ";c = " << c << "该三角形为等腰三角形DY" <<endl;
}
else
{
if (zhijiao(a, b, c))
cout << "为非等腰直角三角形" << endl;
else
cout << "为普通三角形" << endl;
}
}
else
{
cout << "不为三角形ERROR";
}
split = strtok(NULL, ";");


}
system("pause");

}
int zhijiao(int a, int b, int c)
{
if (a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a)
{
return 1;
}
else
return 0;
}

#include
#define N 20

void fun(int arr[][N],int r, int c, int n){
int i, d;
if(r==0 && c==0){
arr[r][c]=1;
fun(arr,r+1,0,n);
}else if(c==0){
arr[r][c]=1;
fun(arr,r,c+1,n);
}else if(r==c){
d=0;
for(i=0; i<=r-1; i++)
d+=arr[r-1][i];
arr[r][c]=d;
if(r==n)
return;
else
fun(arr,r+1,0,n);
}else{
arr[r][c]=arr[r][c-1]+arr[r-1][c];
fun(arr,r,c+1,n);
}
}
int main(){
int a[N][N];
int i, j ,n;
printf("n(<20)=?");
scanf("%d",&n);
fun(a,0,0,n-1);
for(i=0; i<n; i++){
for(j=0; j<=i; j++)
printf("%6d",a[i][j]);
printf("
");
}
return 0;
}

/*三角形问题可以更详细地描述为:
三角形问题:输入三个整数a、b和c分别作为三角形
的三条边,要求a、b和c必须满足以下条件:
Con 1.1≤a≤100                   Con 4.a<b+c
Con 2.1≤b≤100                   Con 5.b<a+c
Con 3.1≤c≤100                   Con 6.c<a+b
如果a、b和c满足Con1、Con2和Con3,则输出为四种情况之一:
1).如果不满足条件Con 4、Con 5和Con 6中有一个,则程序
输出为"非三角形"。
2).如果三条边相等,则程序输出为"等边三角形"。
3).如果恰好有两条边相等,则程序输出为"等腰三角形"。
4).如果三条边都不相等,则程序输出为"一般三角形"
1测试内容
输入为三角形的三条边,
要求输入值为正整数,否则提示"输入不合法"
要求三边长度都在20~80之间,否则提示"边长超出范围"
如果不能构成三角形,则输出"非三角形"
若三边相等,则输出为"等边三角形"
若有两边相等,则输出"等腰三角形"
若三边都不相等,则输出"一般三角形"
若有一个直角,则输出"直角三角形"
若有一个直角,并且有两边相等,则输出"等腰直角三角形"*/
#include <iostream>
using namespace std;
int main()
{
   int a,b,c;
   cin>>a>>b>>c;
   if(a<=0 || b<=0 || c<=0)
     cout<<"输入不合法"<<endl;
   else
      if(a>=20 && a<=80 && b>=20 && b<=80 &&c>=20 && c<=80 )
      cout<<"边长超出范围" <<endl;
   else
      if(a+b<=c || b+c<=a || a+c<=b)
      cout<<"非三角形"<<endl;
      else 
     if(a==b && b==c && a==c)
       cout<<"等边三角形"<<endl;
     else
     {
      if(a==b && b!=c ||a==c && b!=c || b==c && a!=b)
      {
    if(a*a+b*b==c*c || a*a+c*c==b*b || b*b+c*c==a*a)
          cout<<"等腰直角三角形"<<endl;
        else  
          cout<<"等腰三角形"<<endl;
      }
      else
        if(a*a+b*b==c*c || a*a+c*c==b*b || b*b+c*c==a*a)
          cout<<"直角三角形"<<endl;
     else
       cout<<"一般三角形"<<endl;  
     }  
     return 0;     
}



用C语言编写的程序,执行结果是多少?
程序输出的结果为a=11,b=13。程序的执行过程:首先定义了a的值为12,b的值为12,然后执行我们的输出语句,我们输出的不是a和b的值,而是表达式“--a”和表达式“++b”的值,因为前缀的“++”和“--”都是先进行加一或者减一的操作,再输出。所以说“--a”输出的结果为11,“++b”输出的...

使用C++或者c语言编写简单的门禁系统
C++版#include <iostream>#include using namespace std;int main(){map<int, int> reader;int n, reader_no;cin >> n;while (n--){cin >> reader_no;reader[reader_no]++;cout << reader[reader_no] << " ";}cout << endl;return 0;} ...

用C语言编写一道程序计算100以内偶数的和
100以内的偶数和结果当包括100时则为2550,不包括100时,100以内的偶数和为2450。include<stdio.h> int main(){ int sum=0;int i=0;for (i=0;i<=100;i+=2){ sum+=i;} printf("100以内的偶数的和:%d\\n",sum);return 0;}

C语言是什么? 要怎么编 ? 用什么编?
它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的...

大学生几大编程语言你都会哪几种?
作为C语言的扩展,c++是贝尔实验室于80年代推出的。c++是一种混合语言,既可以实现面向对象编程,也可以开发C语言面向过程风格的程序。C语言让程序员第一次可以通过结构化的理念编写出易于理解的复杂程序;尽管C语言是一个伟大的语言,但是程序的代码量达到30000行以上时.程序员就不能很好的从总体上把握和控制这个程序。

要求用VB,或者C语言,编写一个程序,从键盘输入一个奇数n,要求求出1+...
include <stdio.h> void main(){ int m = 0, i, j = 0;while((m % 2) == 0){ printf("Please input a odd number: ");scanf("%d", &m);for(i = 1; i <= m; i += 2)j += i;while(getchar() != '\\n');} printf("%d\\n", j);} ...

用C语言编写:输入半径R,求圆的周长、面积和球的体积。
define PI 3.14 include<stdio.h> void main(void){ float r,l,s,v;printf("please input r\\nr=");scanf("%f",&r);l=2*PI*r;s=PI*r*r;v=4*PI*r*r\/3;printf("the result :");printf("\\nl=%f\\ns=%f\\nv=%f",l,s,v);getchar();} ...

可以编写c语言的软件有哪些?
可以编写c语言的软件有:Vim、C++编译器、Dev-C++、Code::Blocks、Visual Studio等。1、Vim Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。VIM是自由软件。Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年...

如何编写c语言的累加程序?
以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。(3)二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。

单片机用什么语言编写程序
一般是C语言或者汇编语言。1、大多数情况下,单片机运行的程序,都是C语言编写的。不过并不是纯粹的传统C语言,而是变种后的C51语言。单片机C51语言是由C语言继承而来的。和C语言不同的是,C51语言运行于单片机平台,而C语言则运行于普通的桌面平台。C51语言具有C语言结构清晰的优点,便于学习,同时具有...

宁夏回族自治区18080233243: C语言或者C++编写一个三角形问题 -
糜薛盐酸: /*三角形问题可以更详细地描述为:三角形问题:输入三个整数a、b和c分别作为三角形 的三条边,要求a、b和c必须满足以下条件:Con 1.1≤a≤100 Con 4.a<b+c Con 2.1≤b≤100 Con 5.b<a+c Con 3.1≤c≤100 Con 6.c<a+b 如果a、b和c满足Con1...

宁夏回族自治区18080233243: 编程关于三角形的题C语言或C++ -
糜薛盐酸: #include<iostream> using namespace std; int main() { double a,b,c; cout<<"请输入三个数:"<<endl; cin>>a>>b>>c; if(a+b>c&&a+c>b&&b+c>a) { cout<<"能构成三角形"<<endl; cout<<"该三角形是:"<<endl; if(a*a+b*b>c*c&&b*b+c*c>a*a...

宁夏回族自治区18080233243: 求一个用C++语言做的三角形类.要求:1、带6个参数,即三个顶点的平面坐标.2、在三角形的基础上做一个等腰三角形.3、输入三个顶点要能求三角形的周长... -
糜薛盐酸:[答案] 这个问题考验你 对类设计 和 抽象问题的 能力 建议自己弄 以后工作了 遇到很多的

宁夏回族自治区18080233243: C语言编程(三角形问题) -
糜薛盐酸: 随便写了个: #include <stdio.h> main() {int a,b,c;printf("请输入三角形的三边:");scanf("%d",&a);scanf("%d",&b);scanf("%d",&c);if((a+b)>c&&(b+c)>a&&(a+c)>b){printf("这三边可以组成三角形!\n");if (a*a+b*b==c*c||a...

宁夏回族自治区18080233243: 输入三角形的三条边的边长,用c语言编写求其面积的程序 -
糜薛盐酸: 给你个C++的代码,C的话自己简单改一下! #include#include main() { int a,b,c,s; cout<<"请输入三角形的三边长度:"; cin>>a>>b>>c; s=(a+b+c)/2; cout<<"The area is "<<<'\n'; }

宁夏回族自治区18080233243: c语言输出三角形 -
糜薛盐酸: 输出步骤如下: 1. //输入正整数n<=20输出一个n层的倒三角形.例如n=5则输出如下所示2. // 解题思路 每层是2n-1个* 5-i个空格 双层for循环3. /*4. #########5. #######6. #####7. ###8. #9. */10. #include<stdio.h>11. int main(){12. int ...

宁夏回族自治区18080233243: 请教一下,用C语言编程,给出三角形的三条边,求三角形的面积?怎么弄? -
糜薛盐酸: #include int main() { float a,b,c,h,s; scanf("%f %f %f",&a,&b,&c); h=(a+b+c)/2; s=sqrt(h*(h-a)*(h-b)*(h-c)); printf("%g\n",s); return 0; }

宁夏回族自治区18080233243: 用C语言写直角三角形的问题 -
糜薛盐酸: 我们不看源程序,就自己的理解来做,直角三角形,就是在N行输出N个*号,你这样想程序就很快就出来了,两个FOR循环,第一个规定了输出的层数,里面的for规定了每行输出的*个数,所以就是为...

宁夏回族自治区18080233243: 急求C++ 答案!! “编写一个程序,设计一个三角形类,给定三角形的三条边长a、b、c,包含一个友元函数, -
糜薛盐酸: #include <iostream>#include <cmath> using namespace std; //三角形类 class triangle{ private: int a,b,c; double area; public: triangle() : a(0), b(0), c(0) {}triangle(int edgea, int edgeb, int edgec) : a(edgea), b(edgeb), c(edgec) {}~triangle(){};...

宁夏回族自治区18080233243: 求编写一个C++程序,求直角三角形的面积和周长 -
糜薛盐酸: #include <iostream.h> #include <math.h>void main(void) {double S=0,a=0,b=0,C=0;cout<<"请输入两直角边的值:"<<endl;cin>>a>>b;S = (a*b)/2;C = a+b+sqrt(a*a+b*b);cout<<"直角三角形的面积为:"<<S<<endl;cout<<"直角三角形的周长为:"<<C<<endl; }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网