c语言小小小问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 09:43:13
如何让程序只读一个字母。我用的是getchar()但是你可以打入很多字母。我要只打一个字母怎么办哪?就是有一个menu要选里面的功能。
你们都理解错了!getchar谁都会用!我要只得到一个字母!getchar可以输入一堆的。。。就是这个
c=getchar();

switch(c)
{
case 'p':
case 'P': park(); break; /*Choose 'p' or 'P' link to park()*/
case 't':
case 'T': depart(); break;
case 'c':
case 'C': changeprice();break;
case 'a':
case 'A': create(); break;
case 'l':
case 'L': list(); break;
case 's':
case 'S': search(); break;
case 'm':
case 'M': amend(); break;
case 'q':
case 'Q': q=quit(); break;

default : printf("\nInput Error!please check!\n\n");
system("pause");

dev-cpp 和 vc2005中都有
#include <conio.h>

getch() 读取一个字符,屏幕上不显示
getche() 读取一个字符,屏幕上有回显

同学 你的意思是 按下一个字符后 不用按回车就能自动接受这个字符嘛

#include<conio.h> //DevCpp
main()
{
char a;
......
a=getch();
......
}

你就输入一个字母后直接按Enter键就可以了。getchar()函数本身就只会接收一个字母。

getchar()函数就只接受一个字符

char temp;
temp = getchar();
//下面就是目录里面都操作啦
switch(temp){
......
}

#include <conio.h>
c=getch();

switch(c)
{
case 'p':
case 'P': park(); break; /*Choose 'p' or 'P' link to park()*/
case 't':
case 'T': depart(); break;
case 'c':
case 'C': changeprice();break;
case 'a':
case 'A': create(); break;
case 'l':
case 'L': list(); break;
case 's':
case 'S': search(); break;
case 'm':