第二实验
? 第一個成績
?
注:break后加分號
?
? ?成績2
# include<stdio.h>int main(){int x;printf("輸入分數判斷等級\n");scanf("%d",&x);if(x<0||x>100){printf("輸入錯誤\n");
}else if (x>=90){
printf("A");
}else if(x>=80){
printf("B");
}else if(x>=70){
printf("C");
}else if(x<=60){
printf("E");
}return 0;}
注:else if后的括號不加分號
?
第二個五位數輸出
# include <stdio.h> # include<stdlib.h> int main() {long int x,y,a,b,c,d,e;printf("輸入整數\n");scanf("%d",&x);a=x/10000;b=x%10000/1000*10;c=x%10000%1000/100*100;d=x%10000%1000%100/10*1000;e=x%10000%1000%100%10*10000;if(x/100000!=0||x/10<0||x<0){printf("輸出錯誤\n");exit(0); }else if (x/10000!=0){y=e+d+c+b+a;printf ("這個數為五位整數且輸出為%ld\n",y);}else if (x/1000!=0){a=x/1000;b=x%1000/100*10;d=x%1000%100%10*1000;c=x%1000%100/10*100;y=d+c+b+a; printf("這個數為四位整數且輸出為%ld\n",y);}else if (x/100!=0){a=x/100;b=x%100/10*10;c=x%100%10%10*100;y=c+b+a; printf("這個數為三位整數且輸出為%ld\n",y);}else if (x/10!=0){a=x/10;b=x%10*10;y=b+a; printf("這個數為兩位整數且輸出為%ld\n",y);}else if (x/10==0){y=x;printf("這個數為一位整數且輸出為%ld\n",y);}return 0;}
注:計算數的時候一定小心出錯,還有加\n;
第三個回文數
# include <stdio.h> int main() { int a,b,c,d,e,f;printf("輸入一個五位整數\n");scanf("%d",&a);b= a/10000;c=a%10000/1000;d=a%10000%1000/100;e=a%10000%1000%100/10;f=a%10000%1000%100%10;if (a/100000!=0||a/10000==0||a/10<0){printf("輸入有問題\n");}else if(b==f&&c==e) { printf ("這個數為回文數\n"); }else{printf ("這個數不是回文數\n");}return 0;}注:格式對齊
第四個函數
# include <stdio.h> int main () {int a;double b;printf("輸入x的值\n");scanf("%d",&a);if(a<0||a>=20){printf("輸入錯誤\n");}if(a>=0&&a<5){b=-a+2.5;printf("輸出的值為%.3f\n",b);}if (a>5&&a<10){b=2-1.5*(a-3)*(a-3);printf("輸出為%.3f\n",b);}if (a>10&&a<20){b=a/2.0-1.5;printf("輸出為%.3f\n",b);}return 0; }注:小數為.3 還有注意類型;
知識點總結:
算數運算符,關系運算符,邏輯運算符優先級由高到低;
在if else中if后必須要加括號在if的嵌套語句中共有兩種情況一種是包含if語句一種是else中加入if語句;
條件運算符表達式1?表達式2:表達式3;
switch....case語句中switch后一般為整型或字符型且case后各值不相同;
問題:出現運行錯誤 輸入的變量有問題需要更改變量:
? ? ?結構錯誤 ? ? 少加括號或分號
? ? ?邏輯結構 ? ? 在if語句中else錯誤需要刪除或添加; ?
轉載于:https://www.cnblogs.com/saber114567/p/5952490.html
總結
- 上一篇: 绕过CDN查找网站真实IP方法收集
- 下一篇: 怎么开发一个npm包