c语言问题,很急,下面的程序在哪里出错了

[复制链接]
查看11 | 回复5 | 2012-10-10 19:39:12 | 显示全部楼层 |阅读模式
#include voidascii (char c) { printf("字符%c的ascii码十进制是:%d\n八进制是:%o\n,十六进制是:%x\n",c,c,c,c); }void main(){
char c; loop:printf("请输入字符:");c=getchar();ascii(c);getchar();//这儿要加一个getchar(),缓冲goto loop;}...
回复

使用道具 举报

千问 | 2012-10-10 19:39:12 | 显示全部楼层
#include voidascii (char c) { printf("字符%c的ascii码十进制是:%d\n八进制是:%o\n,十六进制是:%x\n",c,c,c,c); }int main(){
char c;loop:printf("请输入字符:");c=getchar();...
回复

使用道具 举报

千问 | 2012-10-10 19:39:12 | 显示全部楼层
一、printf("字符%c的ascii码十进制是:%d\n八进制是:%o\n,十六进制是:%x\n",c,c,c); //这里多了个参数c二、c=getchar();如果你不希望有回车符的输出,在其后要再加一个getchar();即:c=getchar();getchar(); //吸收回车...
回复

使用道具 举报

千问 | 2012-10-10 19:39:12 | 显示全部楼层
#include voidascii (char c) { printf("字符%c的ascii码十进制是:%d\n八进制是:%o\n,十六进制是:%x\n",c,c,c,c); }void main(){
char c;
loop:printf("请输入字符:");
c=getch...
回复

使用道具 举报

千问 | 2012-10-10 19:39:12 | 显示全部楼层
用getchar()每次读取一个字符,输入字符a,敲入回车,这个时候在输入流中会有字符a跟回车两个值,第一次循环的时候,字符a读入,调用一次ascii()函数,这时输入流中还有回车符,将回车读入,在此执行一次ascii()函数,此时输入流中没有了,程序暂停等待输入,楼下的告诉你用getchar()单独的调用一次的方法,这个时候会把输入流中剩余的回车读入,防止...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行