<span style="font-size:18px;">#include <stdio.h> #include <stdlib.h> char get_choice(void); char get_first(void); int get_int(void); void count(void); int main(void) { int choice; while((choice = get_choice())!='q') { switch(choice) { case 'a': printf("Buy low,sell high.\n"); break; case 'b': putchar('\a'); break; case 'c': count(); break; default: printf("Program error!\n"); break; } } printf("Bye!\n"); return 0; } void count (void) { int n,i; printf("Count how far ? Enter integer:\n"); n = get_int(); for( i = 0; i < n ; i++) { printf("%d\n",i); } while(getchar()!='\n') continue; } char get_choice(void) { int ch; printf("Enter the letter of your choice:\n"); printf("a.advice b.bell\n"); printf("c.count d.quit\n"); ch = get_first(); while(((ch < 'a')||ch >'c') && ch != 'q') { printf("Please respond with a,b,c,d,and q.\n"); ch = get_first(); } return ch; } char get_first(void) { int ch; ch = getchar(); while(getchar() != '\n') continue; return ch; } int get_int(void) { int input; char ch; while(scanf("%d",&input) != 1) { while((ch = getchar())!='\n') putchar(ch);<span style="white-space:pre"> </span>/* 剔除错误的输入 */ printf(" is not an integer.\n Please enter an integer value,such as 25,-178,or 3:"); } return input; } </span>
原文地址:http://blog.csdn.net/u011046042/article/details/41958247