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

函数说明

  1. 要求用户输入天数,然后将该值转换为周数和天数。
  2. 使用一个while循环让用户重复输入天数,直到输入q时程序终止。
  3. 注意点:使用scanf()函数输入时,缓存区会剩余一个 换行符,导致下次循环读入数据时产生错误,规避这种情况有两种方法:
    额外使用一次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("
请按任意键继续,按q键退出:");
        getchar();
        char_com = getchar();
    }
}
int main() {
    convertDay();
    return 0;
}

运行效果

经验分享 程序员 微信小程序 职场和发展