5.11编程练习
第1题
编 写 一 个 程 序, 把 用 分 钟 表 示 的 时 间 转 换 成 用 小 时 和 分 钟 表 示 的 时 间。 使 用# define 或 const 创 建 一 个 表 示 60 的 符 号 常 量 或 const 变 量。 通 过 while 循 环 让 用 户 重 复 输 入 值, 直 到 用 户 输 入 小 于 或 等 于 0 的 值 才 停 止 循 环。
答案代码:
#include <stdio.h>
#define M_PER_H 60
int main(void)
{
int mins,h,m;
printf("Please enter a time in minute(<=0 to quit):\n");
scanf("%d",&mins);
while (mins>0)
{
h=mins/M_PER_H;
m=mins%M_PER_H;
printf("The time is %d hours, %dminutes\n",h,m);
printf("Enter another time: \n");
scanf("%d",&mins);
}
printf("The program exit!");
return 0;
}
运行结果:
第2题
编 写 一 个 程 序, 提 示 用 户 输 入 一 个 整 数, 然 后 打 印 从 该 数 到 比 该 数 大 10 的 所 有 整 数( 例 如, 用 户 输 入 5, 则 打 印 5 ~ 15 的 所 有 整 数, 包 括 5 和 15)。 要 求 打 印 的 各 值 之 间 用 一 个 空 格、 制 表 符 或 换 行 符 分 开。
答案代码:
第一种方法
#include <stdio.h>
int main(void)
{
int n,m;
printf("Please enter a number:\n");
scanf("%d",&n);
printf("The numbers are:\n");
m=n+10;
printf("%d\n",n);
while(n++<m)
printf("%d\n",n);
return 0;
}
第二种方法
#include <stdio.h>
int main(void)
{
int n=0;
int m;
printf("Please enter a number:\n");
scanf("%d",&m);
printf("The numbers are:\n");
while (n++<11)
printf("%d\n",m++);
return 0;
}
运行结果:
第3题
编 写 一 个 程 序, 提 示 用 户 输 入 天 数, 然 后 将 其 转 换 成 周 数 和 天