編程里判斷
㈠ 如何用編程 任意輸入3個數判斷能否構成三角形
#include<stdio.h>
int main()
{
int a[3];int i,t;
printf("請輸入三個整數:\n");
for(i=0;i<3;i++)
scanf("%d",&a[i]);
if(a[0]>a[1]){t=a[0];a[0]=a[1];a[1]=t;}
if(a[1]>a[2]){t=a[1];a[1]=a[2];a[2]=t;}
if(a[0]>a[2]){t=a[0];a[0]=a[2];a[2]=t;}
for(i=0;i<3;i++)printf("%d ",a[i]);
if(a[0]+a[1]>a[2])printf("這三個數能構成");
if(a[0]*a[0]+a[1]*a[1]==a[2]*a[2])printf("直角");
else if(a[0]==a[1]&&a[1]==a[2]&&a[0]==a[2])printf("等邊");
else printf("一般");
printf("三角形\n");
for(i=0;i<3;i++)
scanf("%f",&a[i]);
return 0;
}
是不是這個意思?
㈡ c語言編程中如何判斷一個數是否為整數
C語言判斷是否為整數,那麼只可能是判斷輸入的值,或者字元串中的值,是否為整數。
因為一旦存儲在變數中,根據變數類型,要麼為整數,要麼為浮點數,是確定的。
一、判斷思路:
1、整數中,按十進制計算,合法字元為0到9,另外在最初位置可以有符號,即+或者-。
2、對於輸入的值,可以先存儲到字元串中,這樣轉換為判斷字元串中是否為整數。
3、先判斷第一個字元是否為+或者-, 如果是,則從第二個開始判斷,否則從第一個開始判斷。
4、對每一個需要判斷的字元,判斷是否在'0'到'9'之間,如果是則合法,否則非法。
5、一旦出現非法字元,說明不是整數。如果所有字元合法,那麼是整數。
二、參考代碼:
intis_int(char*s)//判斷s中是否為整數,如果是返回1,否則返回0.
{
char*p=s;//p指向s。
if(*p=='+'||*p=='-')//如果第一個字元為符號,則從第二個開始遍歷。
p++;
while(*p)//遍歷字元串。
{
if(*p<'0'||*p>'9')return0;//出現非法字元,返回0,表示不是整數。
p++;//判斷下一個字元。
}
return1;//所有都是合法字元,返回1,表示為整數
}
intmain()
{
chars[200];
gets(s);//讀取輸入,存到s中。
if(is_int(s))//判斷並輸出結果
printf("%s是整數 ",s);
else
printf("%s不是整數 ",s);
return0;
}