一、編寫一個程序,將用分鐘表示的時間轉換成以小時和分鐘表示的時間。使用#define或const來建立一個表明60的符號常量。使用while循環來容許用戶重複鍵入值,而且當鍵入一個小於等於0的時間終止循環。編程
#include #define HOUR 60 int main() { int minutes; printf("Please enter the minutes:"); scanf("%d",&minutes); while(minutes>0) { printf("%d hour,%d minutes.\n",minutes/HOUR,minutes%HOUR); printf("Please enter the minutes again:"); scanf("%d",&minutes); } return 0; }
二、編寫一個程序,此程序要求輸入一個整數,而後打印從輸入(包含)到比輸入大10(包含)的全部整數值(也就說,若是輸入是5,那麼輸出就從5到15)。要求在各個輸出之間用空格、製表符或換行符分開。函數
#include int main(void) { int num,i; i=0; printf("Please input the number.\n"); scanf("%d",&num); while(i++<11) { printf("%d ",num++); } return 0; }
三、編寫一個程序,該程序要求用戶輸入天數,而後將該值轉換爲週數和天數。例如,該程序將把18天轉換爲2周4天。用下面的格式顯示結果:ui
18 days are 2 weeks,4 days.設計
#include #define DAYS_W 7 int main(void) { int days; printf("Please input the days:\n"); scanf("%d",&days); while(days>0) { printf("%d days are %d weeks,%d days.\n",days,days/DAYS_W,days%DAYS_W); printf("Please input the days:\n"); scanf("%d",&days); } return 0; }
四、編寫一個程序,讓用戶按釐米輸入高度值,而後程序按釐米和英尺英寸顯示這個高度值。容許釐米和英尺英寸的值出現小數部分。程序容許用戶輸入,直到用戶輸入一個非正的數值。程序運行示例以下:code
Enter a height in centemeters:182input
182.0 cm = 5 feet,11.7 inchesit
Enter a height in centimeters (<=0 to quit): 168io
168.0 cm = 5 feet ,6.1 inchesclass
Enter a height in centimeters (<=0 to quit): 0變量
bye
#include #define INCH 2.54 //1 INCH = 2.54 CM int main(void) { float cm; printf("Enter a height in centimeters:"); scanf("%f",&cm); while (cm>0) { printf("%.1f cm = %d feet,%.1f inches\n",cm,int(cm/INCH/12),cm/INCH-int(cm/INCH/12)*12); printf("Enter a height in centimeters(<=0 to quit):"); scanf("%f",&cm); } printf("bye\n"); return 0; }
五、改寫用來找到前20個整數以後的程序addemup.c(程序清單5.13)(若是你願意,能夠把addemup.c程序看做是一個計算若是您第一天獲得$1,次日獲得$2,以此類推,您在20天內會賺多少錢的程序)。修改該程序,目的是您能交互地告訴程序,計算將進行到哪裏。也就是說,有一個讀入的變量來代替20.
#include int main(void) { int count,sam,max; count=0; sam=0; printf("Input the max:\n"); scanf("%d",&max); while(count++
六、如今修改編程練習5中的程序,使它可以計算整數平方的和。C沒有平方函數,可是您能夠利用n的平方是n*n的事實。
#include int main(void) { int count,sam,max; count=0; sam=0; printf("Input the max:\n"); scanf("%d",&max); while(count++
#include int main(void) { int count,sam,max; count=0; sam=0; printf("Input the max:\n"); scanf("%d",&max); while(count++
七、編寫一個程序,該程序要求輸入一個float型值,並打印該值的立方數。使用您本身設計的函數來計算該值的立方數並將其立方數打印出來。main()函數把輸入的值傳遞給該函數。
#include<stdio.h> float cube(float n); int main(void) { float num; printf("Input a float:\n"); scanf("%f",&num); printf("The cube of %f is %f.\n ",num,cube(num)); return 0; } float cube(float n) { return(n*n*n); }
八、編寫一個程序,該程序要求用戶輸入一個華氏溫度。程序以double類型讀取溫度值,並將它做爲一個參數傳遞給用戶提供的函數Temperatures()。該函數將計算相應的攝氏溫度和絕對溫度,並以小數點右邊有兩位數字的精度顯示這三種溫度。它應該用每一個值所表明的溫度刻度來標識這3個值。下面是將華氏溫度轉換成攝氏溫度的方程:
Celsius = 1.8*Fahrenheit + 32.0;
一般用在科學上的絕對溫度的刻度是0表明絕對零,是可能溫度的下界。下面是將攝氏溫度轉換爲絕對溫度的方程:
kelvin = Celsius + 273.16
Temperatures()函數使用const來建立表明該轉換裏的3個常量的符號。main()函數將使用一個循環來容許用戶重複的輸入溫度,當用戶輸入Q或其餘非數字值時,循環結束。
#include<stdio.h> void Temperatures(double); int main(void) { double fahrenheit; printf("Please input a fahrenheit:\n"); while(scanf("%lf",&fahrenheit)==1) { Temperatures(fahrenheit); printf("Please input a fahrenheit:\n"); } printf("End.\n"); return 0; } void Temperatures(double num) { const double a=1.8,b=32.0,c=273.16; printf("Fahrenheit = %lf\t",num); printf("Celsius = %lf\t",a * num + b); printf("Kelvin = %lf\n",a * num + b + c); }