| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 554 人关注过本帖
标题:要急出人命了。不执行问题
取消只看楼主 加入收藏
学技术的
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
快速回复:要急出人命了。不执行问题
数据加载中...
 
   



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

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