C語言程式問題 期末考範圍 需要救星來救助....
1.輸入一實數,分別印出:(a)整數部份(b)到小數點兩位。
2.輸入兩個整數,算出他們的和、差、積、商和餘數。
3.算出1至100的總和、奇數和、偶數和,分別用(a)for迴圈(b)while迴圈
4.從大到小列出200以下可以被13整除的數字
拜託救星來救助快被當掉的我
拜託啦 感激.....
4 個解答
- 2 0 年前最佳解答
1.
#include<stdio.h>
#include<stdlib.h>
int main(){
float n;
printf("Please Input A Real Number: ");
scanf("%f",&n);
printf("%f\t%.2f\n",n,n);
system("pause");
return 0;
}
2.
#include<stdio.h>
#include<stdlib.h>
int main(){
int a,b;
printf("Please Input Two Integers: ");
scanf("%d %d",&a,&b);
printf("%d %d %d %f %d",a+b,a-b,a*b,(static_cast<float>(b)/static_cast<float>(a)),a%b);
system("pause");
return 0;
}
3.(a)
#include<stdio.h>
#include<stdlib.h>
int main(){
int i,sum=0;
for(i=1;i<=100;i++)
sum+=i;
printf("%d \n",sum);
system("pause");
return 0;
}
3.(b)
#include<stdio.h>
#include<stdlib.h>
int main(){
int i=1,sum=0;
while(i<=100){
sum+=i;
i++;
}
printf("%d \n",sum);
system("pause");
return 0;
}
4.
#include<stdio.h>
#include<stdlib.h>
int main(){
int i;
for(i=200;i>12;i--)
if(!(i%13))
printf("%d\t",i);
printf("\n");
system("pause");
return 0;
}
2005-12-28 23:29:34 補充:
/對左右不同的參數的定義是不一樣的
當左右都是整數時除法也是整數
所以在這題如果用a/b的話假設5/3會傳回1
小數部份它不管,因為你本來就是整數除法
所以如果要傳回帶有小數的"浮點數"
就必須先把運算子(a,b)轉成浮點數
它才會用浮點數的除法
c的靜態對應(static_cast)提供了一個簡單的轉換
用法是static_cast (要拿來轉的變數)
我記得要強迫把float轉成int可以用
int(變數),但是我剛剛測float(變數)沒辦法轉成float型態
可能是Visual C++的問題,或是本來就不能這樣轉
如果不懂再問吧
2005-12-28 23:33:09 補充:
還有a%b是餘數除法,兩邊都要是整數才能用
ex: 5%3=2,8%2=0
參考資料: 讀大學就要好好學些東西喔 ... 這些基本的東西建議你要自己學會怎麼寫 - 2 0 年前
我現在練習if else問題 比大小那種 這是我們老師給的題目 但沒解答
所以上來PO 謝謝你的建言
2005-12-28 22:35:07 補充:
(static_cast (b)/static_cast (a)),a%b) 可否請問這裡是什麼意思
之前的我大概都懂 感激
2005-12-29 17:49:06 補充:
謝謝各位啦 當然還有個傢伙詛咒我
我才不會被當掉.....