已知小明爸爸的身高是175厘米c 语言,哈工大C語言公開課練兵編程(一)

/*

*Author:Biechuyangwang(心理咨詢木木)

*QQ群:218484263(18王道計算機群)

*/

由於題目比較簡單直接給出了代碼,就不用分析了。

目前暫時做了前兩周的題,后面的內容有時間會補上。

第一周

1 hello world!(3分)

#include

int main(){

printf("hello world!\n");

return 0;

}

2 在屏幕上輸出多行信息

#include

int main(){

printf("hello world!\n");

printf("hello hit!\n");

printf("hello everyone!\n");

return 0;

}

3 計算半圓弧長及半圓面積

題目描述:編程並輸出半徑r=5.3的半圓弧長(提示:半圓弧長不應該加直徑的長度。)及該半圓弧與直經圍成的半圓的面積,π的取值為3.14159。要求半徑r和必須π利用宏常量表示。

輸入格式:無

輸出格式:

半圓的面積輸出格式: “Area=%.5f\n”

半圓弧長輸出格式: “circumference=%.5f\n”

輸出樣例:

Area=44.12363

circumference=16.65043

#include

#define r 5.3

#define PI 3.14159

int main(){

printf( "Area=%.5f\n",PI*r*r/2);

printf("circumference=%.5f\n",PI*r);

return 0;

}

4 計算長方體體積

題目描述:編程並輸出長1.2、寬4.3、高6.4的長方體的體積。要求長方體的長、寬、高必須利用const常量表示。程序中用到的數據類型均為為 double類型。

輸入格式:無

輸出格式:”volume=%.3f\n”

#include

int main(){

const double a=1.2,b=4.3,c=6.4;

printf("volume=%.3f\n",a*b*c);

return 0;

}

第二周

1 輸出逆序數

題目描述:從鍵盤任意輸入一個3位整數,編程計算並輸出它的逆序數(忽略整數前的正負號)。例如,輸入-123,則忽略負號,由123分離出其百位1、十位2、個位3,然后計算3*100+2*10+1 = 321,並輸出321。

提示:

1. 從鍵盤輸入數據可以使用函數scanf()。例如,scanf(“%d”, &x); 表示從鍵盤輸入整數並存入整形變量x中。

2. 利用取絕對值函數 fabs()忽略輸入數據的負號。fabs(x)表示計算變量x的絕對值。

3.使用數學函數,需要在程序開頭加上編譯預處理指令 #include

#include

#include

int main(){

int x;

printf("Input x:\n");

scanf("%d",&x);

x=abs(x);

x=x%10*100+x/10%10*10+x/100;

printf("y=%d\n",x);

return 0;

}

2 計算總分和平均數

題目描述:小明本學期共有5門課程,分別是英語、語文、數學、歷史和音樂。5科的期中考試成績分別是86分、74分、92分、77分、82分,期末考試成績分別是81分、87分、90分、62分、88分。已知期中和期末考試成績分別占總成績的30%和70%。定義相應的變量存放各科成績,並計算出小明5門課程的總分和平均分。要求平均分輸出兩種形式:帶2位小數的浮點數形式和不帶小數的整數形式。要求總分輸出帶2位小數的浮點數形式。程序中浮點數的數據類型均為float類型。

提示:

輸出不帶小數的平均分的整數形式可以使用強制類型轉換。

示例:

total=408.90

average=81.78

average=81

輸入格式:無

輸出格式:

輸出總分的格式:

“total=%.2f\n”

輸出平均分的格式:

“average=%.2f\n”

“average=%d\n”

#include

int main(){

int a[5]={86,74,92,77,82};

int b[5]={81,87,90,62,88};

float t1=0,t2=0,t=0;

for(int i=0;i<5;i++){

t1+=a[i];

t2+=b[i];

}

t=t1*0.3+t2*0.7;

printf("total=%.2f\n",t);

printf("average=%.2f\n",t/5.0);

printf("average=%d\n",(int)t/5);

return 0;

}

3 存款利率計算器V1.0

題目描述:設銀行定期存款的年利率rate為2.25%,已知存款期為n年,存款本金為capital元,試編程計算並輸出n年后的本利之和deposit。程序中所有浮點數的數據類型均為double類型。

提示:

1. 從鍵盤輸入數據可以使用函數scanf()。本例中為scanf(“%lf,%d,%lf”, &rate, &n, &capital);

2. 本程序最終計算的是復利。

3. 計算冪的數學函數為pow(a,n), 代表a的n次冪。

4. 使用數學函數,需要在程序開頭加上編譯預處理指令 #include

#include

#include

int main(){

double rate,capital,deposit;

int year;

printf("Please enter rate, year, capital:\n");

scanf("%lf,%d,%lf",&rate,&year,&capital);

deposit=capital*pow(1+rate,1.0*year);

printf("deposit=%.3f\n",deposit);

return 0;

}

4 數位拆分v1.0

題目描述:現有一個4位數的正整數n=4321(即n是一個已知的數,固定為4321),編寫程序將其拆分為兩個2位數的正整數43和21,計算並輸出拆分后的兩個數的加、減、乘、除和求余的結果。例如n=4321,設拆分后的兩個整數為a,b,則a=43,b=21。除法運算結果要求精確到小數點后2位,數據類型為float。

示例:

a=43,b=21

a+b=64

a-b=22

a*b=903

a/b=2.05

a%b=1

輸入格式: 無

輸出格式:

數位拆分的輸出格式:”a=%d,b=%d\n”

加法運算的輸出格式:”a+b=%d\n”

減法運算的輸出格式:”a-b=%d\n”

乘法運算的輸出格式:”a*b=%d\n”

除法運算的輸出格式:”a/b=%.2f\n”

求余運算的輸出格式:”a%%b=%d\n”

#include

int main(){

int x=4321,a,b;

a=x/100;

b=x%100;

printf("a=%d,b=%d\n",a,b);

printf("a+b=%d\n",a+b);

printf("a-b=%d\n",a-b);

printf("a*b=%d\n",a*b);

printf("a/b=%.2f\n",a/(b*1.0));

printf("a%%b=%d\n",a%b);

return 0;

}

5 求正/負余數

題目描述:在C語言中,如果被除數為負值,則對一個正數求余的時候,求出的余數也是一個負數。在某些場合下,我們需要求出它的正余數,例如:在C語言中有(-11)%5=-1,但是有時我們希望得到的余數不是-1,而是4。請編寫程序計算(-11)%5的負余數和正余數。

示例:

negative: -1

positive: 4

輸入格式:無

輸出格式:

負余數的輸出格式:”negative: %d\n”

正余數的輸出格式:”positive: %d\n”

#include

int main(){

printf("negative: %d\n",-11%5);

printf("positive: %d\n",-11%5+5);

return 0;

}

6 身高預測

題目描述:已知小明(男孩)爸爸的身高是175厘米,媽媽的身高是162厘米。小紅(女孩)爸爸的身高是169厘米,媽媽的身高是153厘米,按照下面公式,預測並輸出小明和小紅的遺傳身高(不考慮后天因素)。

男性成人時身高=(faHeight+moHeight)×0.54cm

女性成人時身高=(faHeight×0.923+moHeight)/2cm

示例:

Height of xiao ming:181

Height of xiao hong:154

輸入格式: 無

輸出格式:

小明身高的輸出格式:”Height of xiao ming:%d\n”

小紅身高的輸出格式:”Height of xiao hong:%d\n”

#include

int main(){

int mf=175,mm=162,hf=169,hm=153;

printf("Height of xiao ming:%d\n",(int)((mf + mm)*0.54));

printf("Height of xiao hong:%d\n",(int)((hf*0.923 + hm)/2));

return 0;

}

7 求一元二次方程的根

題目描述:計算並輸出一元二次方程2x2+3x+1=0的兩個實根,要求精確到小數點后4位。程序中所有浮點數的數據類型均為float.

提示:

計算平方根的數學函數為sqrt()。

使用數學函數,需要在程序開頭加上編譯預處理指令 #include

示例:

x1=-0.5000

x2=-1.0000

輸入格式: 無

重點內容輸出格式:

“x1=%.4f\n”

“x2=%.4f\n”

#include

#include

int main(){

int a=2,b=3,c=1;

double t1,t2;

t1=-b/2.0/a;

t2=sqrt(b*b-4*a*c)/2.0/a;

printf("x1=%.4f\n",t1+t2);

printf("x2=%.4f\n",t1-t2);

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值