【发布时间】:2015-12-10 10:50:30
【问题描述】:
我正在尝试从键盘读取多个输入并将输入存储在变量中。
我的代码片段:
char answer = 'N';
int artnr;
char artname [27];
int stock;
double price;
while (answer != 'Y') {
printf("%s\n", "Enter article number:");
scanf("%d" , &artnr);
printf("%s\n", "Enter article name:");
scanf("%c" , &artname);
printf("%s\n", "Enter stock balance:");
scanf("%d" , &stock);
printf("%s\n", "Enter a price");
scanf("%f" , &price);
printf("%s\n", "Do you want to quit? (Y/N)");
scanf("%c" , &answer);
}
输出:
输入货号:
1
输入文章名称:
输入库存余额:
25
输入价格
4
你想戒烟吗? (是/否)
输入文章编号:
我的扫描似乎出了点问题。我想它必须在文章名称中使用“/o”,或者当我按下回车键以确认我的输入时。
【问题讨论】:
-
scanf 在缓冲区中留下空白和新行。刷新标准输入或尝试添加空格,如:
" %d"使其忽略这些。