#include<stdio.h>
#include<math.h>/*庫函數fabs求絕對值在他裏面*/
int main(void)
{
double a,b,sum;
scanf("%lf%lf",&a,&b);
sum=a+fabs(b);
printf("%lf + |%lf| = %lf\n",a,b,sum);
return 0;
}
2.編寫程序實現用戶輸入三個整數,求出3個整數的和並輸出
#include<stdio.h>
int main(void)
{
int a,b,c,sum;
scanf("%d%d%d",&a,&b,&c);
sum=a+b+c;
printf("%d + %d + %d = %d\n",a,b,c,sum);
return 0;
}
3.編程計算定期存款本利之和
#include<stdio.h>
int main(void)
{
double rate,capital,deposit;
int n,i;
printf("輸入存款的年利率rate、存款期n和存款本金capital :");
scanf("%lf%d%lf",&rate,&n,&capital);
deposit=capital;
for(i=1;i<=n;i++)
deposit=deposit*(1+rate/100);
printf("%d年後的本利之和deposit =%lf\n",n,deposit);
return 0;
}
4.設計壹個函數,實現從鍵盤輸入三個整數,判斷能否構成三角形
的三邊,如果能就計算輸出三角形面積,按照下圖給出的公式
計算三角形的面積,如果不能就打印出不能構成三角形的提示信息。
#include<stdio.h>
#include<math.h>
int main(void)
{
int a,b,c;
double s,d;
scanf("%d%d%d",&a,&b,&c);
if(a<=0||b<=0||c<=0)
{
printf("三邊長有非正整數,不合要求\n");
return 1;
}
if(a+b<=c||a+c<=b||b+c<=a)
{
printf("三邊長不符合構成三角形的要求,有壹邊過長\n");
return 2;
}
d=(double)(a+b+c)/2;
s=sqrt(d*(d-a)*(d-b)*(d-c));
printf("三邊長為%d,%d,%d的三角形面積為 %lf\n",a,b,c,s);
return 0;
}
5.編程實現實現如下功能:輸入三個班的10名同學的c語言課程成績,編程分別求三個班的成績的最高分,成績的最低分,平均成績並輸出
#include<stdio.h>
int main(void)
{
int a[3][10];
int best[3];
int bad[3];
double ave[3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<10;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
{
ave[i]=best[i]=bad[i]=a[i][0];
for(j=1;j<10;j++)
{
if(best[i]<a[i][j])best[i]=a[i][j];
if(bad[i]>a[i][j])bad[i]=a[i][j];
ave[i]=ave[i]+a[i][j];
}
ave[i]=ave[i]/10;
}
for(i=0;i<3;i++)
printf(" %d 班的最高成績 %d,最低成績 %d,平均成績 %.2lf\n",i+1,best[i],bad[i],ave[i]);
return 0;
}
6.編寫完整程序實現如下功能:輸入壹個整數,判斷它能否被3,5,7整除
#include<stdio.h>
int main(void)
{
int i;
scanf("%d",&i);
if(i%3==0&&i%5==0&&i%7==0) /*判斷整除的條件是取模是否等於0*/
printf("%d 可以被3,5,7整除\n",i);
else
printf("%d 不能被3,5,7整除\n",i);
return 0;
}
7.編寫按收入計算稅費的程序。
#include<stdio.h>
int main(void)
{
int x;
double y;
scanf("%d",&x);
if(x<=800)
y=0;
else if(x>800&&x<=1200)
y=(double)(x-800)*5/100;
else if(x>1200&&x<=2000)
y=(double)(x-1200)*8/100;
else
y=(double)(x-2000)*20/100;
printf("%d 稅費 %lf\n",x,y);
return 0;
}
8.while循環結構編程練習--編寫程序解決如下問題,假定
2012年中國人口為13.39724852億,如果以每年1.4%的速
度增長,多少年後中國人口達到或超過20億。
#include<stdio.h>
int main(void)
{
double x;
int i;
i=0;
x=13.39724852;
while(x<20)
{
x=x*(1+1.4/100);
i++;
}
printf("%d 年後中國人口達到或超過20億\n",i);
return 0;
}
9.編寫程序,求累加和1+2+3+…..+n.並輸出,n由用戶輸入
#include<stdio.h>
int main(void)
{
int n,i,sum;
sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
sum=sum+i;
printf("1+2+3+…..+%d = %d\n",n,sum);
return 0;
}
10.
/*
while循環結構編程練習——計算需要存款多少年定期存款本金和利息利之和
才達到額定數額500000。要求銀行定期存款的年利率由用戶輸入,年利率用變量
rate存放;存款本金由用戶輸入,本金用變量capital存放,單位為元;用戶輸入
打算存款的時間(以年為單位),用變量n存放存款年限,試編程計算多少年後年
後的本金和利息之和達到500000元,本金和利息之和用變量deposit存放。如果用
戶壹次性存款超過了500000元,輸出“妳已是壹次性存款超過50萬的大客戶”和
用戶輸入的存款年限到期後的本金和利息之和。
*/
#include<stdio.h>
int main(void)
{
double rate,capital,deposit;
int n,i,flag=1;
printf("輸入存款利率,存款本金,存款年限: ");
scanf("%lf%lf%d",&rate,&capital,&n);
deposit=capital;
if(capital>=500000)
printf("妳已是壹次性存款超過50萬的大客戶\n");
else
{
i=0;
while(deposit<500000)
{
deposit=deposit*(1+rate/100);
i++;
}
}
printf("%d 年後 本金和利息之和達到500000\n",i);
deposit=capital;
for(i=1;i<=n;i++)
{
deposit=deposit*(1+rate/100);
}
printf("%d 年後 本金和利息之和 %.2lf\n",n,deposit);
return 0;
}