第五章 运算符 表达式和语句

作者在 2008-02-29 21:58:22 发布以下内容

5.11   编程练习

1.

/*计算多个分钟对应的小时*/

#include <stdio.h>

#define a 60  /*一小时60分钟*/

int main(void)

{

float time,hour; /*声明语句*/

while(scanf("%f",&time)==1&&time>0)/*可以允许用户重复输入,

并且当键入的值<=0的时间的时候时终止*/

{

hour=time/a;

printf("The input is %f and %f\n",time,hour);

}

return 0;

2.

/*计算多个分钟对应的小时---- while循环*/

#include <stdio.h>

int main(void)

{

int i=0; /*变量初始化initialize*/

int a;

scanf("%d",&a);

while(i++<=10)/*11次循环*/

{

printf("%d ",a);

a++;

}

return 0;

}

/*计算多个分钟对应的小时---- for循环*/

#include <stdio.h>

int main(void)

{

int i,a;

scanf("%d",&a);

for(i=0;i<=10;i++)/* while 循环开始,11次循环*/

{                 /*代码块开始*/

printf("%d ",a);

a++;

}                /*代码块开始*/

return 0;

}

结果显示:

3.

/*weeks and days*/

#include <stdio.h>

#define he 7    /*一周有7*/

int main(void)

{

int a; /*声明语句*/

while(scanf("%d",&a)==1&&a>=0)/*while 循环开始*/

printf("%d days are %d weeks,%d days.\n",a,a/he,a%he);/*语句*/

return 0;

}

显示结果:

4.

/*addemup.c*/

#include <stdio.h>

int main(void)   /*计算整数的和*/

{

int count,sum,a;/*声明语句*/

count=0;    /*赋值语句*/

sum=0;      /*同上*/

scanf("%d",&a);  /*输入函数*/

printf("a=%d\n",a); /*输出函数*/

while(count++<a)/*用一个变量a来告诉程序在何处结束*/

sum=sum+count;/*语句*/

printf("sum=%d\n",sum);/*函数语句*/

return 0;

}

:在调试这个程序的时候发现,直接有输入语句scanf("%d",&a);,不输出在下一句while(count++<a)使用输入的数据,不起作用,只有输出了,数据才能生效,被后面的语句使用.

5.

/*addemup.c*/

#include <stdio.h>

int main(void)   /*计算整数的平方和*/

{

int count,sum,a;/*声明语句*/

count=0;    /*赋值语句*/

sum=0;      /*同上*/

scanf("%d",&a);  /*输入函数*/

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

while(count++<a)/*用一个变量a来告诉程序在何处结束*/

sum=sum+count*count;/*语句*/

printf("sum=%d\n",sum);/*函数语句*/

return 0;

}

结果显示:

6.

/*定义一个带有参数的函数*/

#include <stdio.h>

void cubic(float n);/*ISO/ANSI C函数原型*/

int main(void)   /*求一个数的立方*/

{

float a;

scanf("%f",&a); /*输入一个float型参数*/

cubic(a);     /*函数调用*/

return 0;

}

void cubic(float n)/*函数定义的开始*/

{                  /*说明该函数接受了一个float参数*/

double b;

b=n*n*n;    /*计算并打印该值的立方*/

printf("b=%f\n",b);

}

7.

/*温度的三种表示法之间的换算*/

#include <stdio.h>

#define a 1.8  /**/

#define b 32.0

#define c 273.16

void Temperatures(double n);/*ANSI风格的原型*/

int main(void)

{

double Fahrenheit;   /*声明语句*/

while(scanf("%lf",&Fahrenheit)==1)/*可以允许用户重复输入,%lfdouble类型的说明符*/

Temperatures(Fahrenheit);/*函数调用*/

return 0;

}

void Temperatures(double n)  /*说明该函数接受一个double参数*/

{

double Celsius,Kelvin;  /*声明语句*/

Celsius=a*n+b;       /*华氏温度和摄氏温度的转换*/

Kelvin=Celsius+c;    /*摄氏温度和绝对温度的转换*/

printf("n=%.2f\nCelsius=%.2e\nKelvin=%.2e\n",n,Celsius,Kelvin);/*三种温度的输出*/

}结果显示:

文章评论,共0条
游客请输入验证码