标题:要急出人命了。不执行问题
取消只看楼主
学技术的
Rank: 2
等 级:论坛游民
帖 子:91
专家分:45
注 册:2007-8-5
结帖率:100%
 问题点数:0 回复次数:4 
要急出人命了。不执行问题

高人来看下********和////////////那部分的代码怎么不执行。
这段程序是为了试验写的.本来想写个学生信息管理系统的,但写到这地方就写不下去了,所以摘出来做下试验。
编译器DEV-C++


#include "stdio.h"
#include "conio.h"
main()
{
char c,_c;
while(1)
{
scanf("%c",&_c);
printf("*************\n");
c=getchar();
if(c=='y'||c=='Y')
continue;
if(c=='n'||c=='N')
break;
printf("////////////\n");
}
printf("great!");
getch();
}
搜索更多相关主题的帖子: 出人命 
2007-08-22 11:16
学技术的
Rank: 2
等 级:论坛游民
帖 子:91
专家分:45
注 册:2007-8-5
得分:0 

把getchar();换成scanf("%c",&c);c=getc(stdin);都一样。或直接用getchar(),后面的改为if(getchar()=='c'...,结果是要输入2次n才能跳出,输入y后要4次回车才能继续。郁闷死了

2007-08-22 11:28
学技术的
Rank: 2
等 级:论坛游民
帖 子:91
专家分:45
注 册:2007-8-5
得分:0 
大彻大悟!谢谢楼上的。
2007-08-22 11:34
学技术的
Rank: 2
等 级:论坛游民
帖 子:91
专家分:45
注 册:2007-8-5
得分:0 
还有,那为什么把getchar();换成scanf("%c",&c);c=getc(stdin);也不行呢
2007-08-22 11:35
学技术的
Rank: 2
等 级:论坛游民
帖 子:91
专家分:45
注 册:2007-8-5
得分:0 
以下是引用nwpu063417在2007-8-22 12:15:42的发言:

我不太清楚getc();函数的用法,只记得它衍生出的fgetc();是向指定文件读入字符的。

我不知道你在程序中变量_c,是干什么的。反正觉得把
scanf("%c",&_c);
printf("*************\n");
放在循环里太乱, 我改成这样你看可否:

#include "stdio.h"
#include "conio.h"
main()
{
char c,_c;
scanf("%c",&_c);
printf("*************\n");
while(1)
{
getchar();
scanf("%c",&c);
if(c=='y'||c=='Y')
continue;
if(c=='n'||c=='N')
break;
printf("////////////\n");
}
printf("great!");
getch();
}

谢谢楼上提醒,你的意思是用第一个getchar();来存放输入完_c后按下的回车对吧?如果是这样的我就想通了。这个问题困扰了我好几天了。我本来是要写个学生通迅录的,段代码是在添加函数里摘出来做了点变动来实验的。

2007-08-23 08:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-164540-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.855751 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved