5.1.编写一个程序,把用分钟表示的时间转换成用小时和分钟表示的时间。使用#define或const创建一个表示60的符号常量或const变量。通过while循环让用户重复输入值,直到用户输入小于或等于0的值才停止循环。
#include <stdio.h>
#define MIN_PER_H 60
int main(void)
{
int min1,min2, hour;
printf("输入时间小于或等与0,程序退出\n");
printf("请输入时间(单位:分钟):");
scanf("%d", &min1);
while (min1 > 0)
{
hour = min1 / MIN_PER_H;
min2 = min1 % MIN_PER_H;
printf("%d分钟可表示为%d小时%d分钟。\n\n", min1, hour, min2);
printf("请输入时间(单位:分钟):");
scanf("%d", &min1);/*使用两个输入:不仅可以避免min1初始值问题,还可以避免打印最后一次min1<=0的输出*/
}
return 0;
}
5.2.编写一个程序,提示用户输入一个整数,然后打印从该数到比该数大10的所有整数(例如,用户输入5,则打印5~15的所有整数,包括5和15)。要求打印的各值之间用一个空格、制表符或换行符分开。
#include <stdio.h>
int main(void)
{
int n,m;
printf("请输入一个整数:\n");
scanf("%d", &n);
m = n;
n = n - 1;
while (n++ < m+10)/*不能只用一个变量n(n++<n+10),会变成无限循环*/
printf("%d ", n);
return 0;
}
5.3.编写一个程序,提示用户输入天数,然后将其转换成周数和天数。例如,用户输入18,则转换成2周4天。以下面的格式显示结果:
18 days are 2 weeks, 4 days.
通过while循环让用户重复输入天数,当用户输入一个非正值时(如0或-20),循环结