程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言問答 >> 弱弱C語言題目

弱弱C語言題目

編輯:C語言問答

弱弱C語言題目

15 一題 #include<stdio.h> main() {int a=100; if(a>100)printf("%d\n",a>100); else printf("%d\n",a<=100); }為什麼這道題結果是1??? 二題 #include<stdio.h> main() {int a=2,b=-1,c=2; if(a<b) if(b<0)c=0; else c+=1; printf("%d\n",c); }為什麼這題結果不是3 而是2? 三題 #include<stdio.h> main() {int x,y,z; x=0;y=2;z=3; switch(x) {case 0:switch(y==2) {case 1:printf("*");break; case 2:printf("%");break; } case 1:switch(z) {case 1:printf("$"); case 2:printf("*");break; default:printf("#"); } } }為什麼這題結果是*# 而不是%#???

最佳回答:

第1題,

後面的a<=100這個。其實是一個判別式,如果a<=100 正確,那麼輸出1(語言中代表正確)。

如果a<=100不正確,則輸出0。  你可以試試我說的。

第二題 :

if(a<b)  //a<b不成立,所以下面兩個都不做
    if(b<0)c=0;
    else c+=1;

而直接就是輸出 c,當然是2了

補充:

x=0;y=2;z=3;
switch(x)
{case 0:switch(y==2) //y==2判別式,別誤以為是y,正確的話為 case 1。不正確的話為case 0
    {

      case 1:printf("*");break;  //這個正確 所以輸出這個 然後跳出去
      case 2:printf("%");break;
      }
case 1:switch(z)

   {

     case 1:printf("$");
     case 2:printf("*");break;
       default:printf("#");
     }
}
如果有什麼不懂,我能幫你一定幫。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved