函数说明

  1. 要求用户输入天数,然后将该值转换为周数和天数。
  2. 使用一个while循环让用户重复输入天数,直到输入'q'时程序终止。
  3. 注意点:使用scanf()函数输入时,缓存区会剩余一个'\n'换行符,导致下次循环读入数据时产生错误,规避这种情况有两种方法:
  • 额外使用一次getchar()函数将缓冲区的换行符读取掉
  • 使用fflush(stdin);将缓冲区清空 

函数实现

#include <stdio.h>

/**
 * 输入天数,转化为周数和天数
 * while循环重复输入天数,直到输入q停止
 */
void convertDay(void)
{
    int int_day;
    char char_com='0';
    while(char_com != 'q')
    {
        printf("请输入天数:");
        scanf("%d",&int_day);
        printf("%d周%d天",int_day/7,int_day%7);
        printf("\n请按任意键继续,按q键退出:");
        getchar();
        char_com = getchar();
    }
}
int main() {
    convertDay();
    return 0;
}

运行效果 

更多推荐

C语言实现while循环重复输入数据