8)对于带有 : 的语句

学长教导:

 永远记住要先处理小范围的情形
 
 
对于  一句话 :如果x>1,再判断x是否大于10,要是大于10,就返回11,否则就返回9,要是x小于1,就返回-3;
 
 
我的开始这样写的
    
1 int x=10;
2 //int b=(x>1)?(x>=10)?11:9):(-3);

但是想法感觉是对的,,实际是错误的,:记住学长那个话,现充范围小的开始,要是你不确定范围,自己画个数轴试试;

正确做法:

1 int x=102 int b=x>10 ? 11 : ((x>1) ? 3 : 9);

下面是应用那个 :  的一段小代码:

求两个数的最大公约数和最小公倍数

 1 #include<stdio.h>
 2 int main()
 3 {
 4     
 5     
 6     
 7     int a,b;
 8     int i,j;
 9     int temp;
10     scanf("%d %d",&a,&b);
11     for(i=1;i<= (a>b?b:a);i++)
12 {
13     if(a%i==0&&b%i==0)
14     temp=i;
15 }
16 printf("%d
",temp);
17 printf("%d
",a*b/temp);
18     
19     
20     
21     
22     
23     
24     return 0;
25 }
原文地址:https://www.cnblogs.com/xiaoyoucai/p/7612737.html