二次键入的一点问题
这个程序是要先输入一串整数,再通过swtich函数输入选项,得出结果。然而我这个程序输完第一次就不能输第二次了,烦请指教下。#include <stdio.h>
#include<ctype.h>
int main(void)
{
int n_odd = 0;
int n_even = 0;
int av_odd, sum_odd, av_even, sum_even, c;
char ch;
printf("输入一串整数: \n");
while((scanf("%d", &c))
{
if(c%2==0)
{
n_even++;
sum_even += n_even;
}
if(c%2==1)
{
n_odd++;
sum_odd += n_odd;
}
if(c=='#')
break;
}
av_odd = sum_odd / n_odd;
av_even = sum_even / n_even;
printf("数字键入结束后请从ABCD中选出一个选项,\n");
printf("选A则输出奇数的平均数值; ");
printf("选B则输出奇数的总和值; ");
printf("选C则输出偶数的平均数值; ");
printf("选D则输出偶数的总和值; \n");
while((ch = getchar()) != '#')
{
if('\n' == ch)
continue;
if(isupper(ch))
switch(ch)
{
case 'A':
printf("奇数的平均数是%d\n", av_odd);
break;
case 'B':
printf("奇数的总和是%d\n", sum_odd);
break;
case 'C':
printf("偶数的平均数是%d\n", av_even);
break;
case 'D':
printf("偶数的总和是%d\n", sum_even);
default:
printf("Done!\n");
}
}
return 0;
}