| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 422 人关注过本帖
标题:getchar 和 gets 用不了
只看楼主 加入收藏
GUMMY
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-12-10
收藏
 问题点数:0 回复次数:4 
getchar 和 gets 用不了
话说为啥我用getchar 和 gets 用不了啊
程序代码:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
#define P printf("%d\n",b[i][o]);
void input()
{
    int n,i=0,o;
    int a[200]={0},j[200]={0};
    char b[200][7]={0};int c[200][7]={0};
    scanf("%d",&n);
    ;
    ;
    for(;i<n;i++)
    {gets(b[i]);
                for(o=0;o<7;o++)
        {
            c[i][o]=(b[i][o]-48);P
            if(b[i][o+1]=='\0')
                break;
            
        }
    }
}



int check(int a)
{
    int i=2,j;
    for(j=0;i<a;i++)
    {
        if(a%i==0)
            j++;
    }
    if(j)
        return 0;
    else
        return 1;
}



void main()
{
    void input();
    input();

}
2013-12-10 21:25
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
注意缓冲区的清空...

三十年河东,三十年河西,莫欺少年穷!
2013-12-10 21:32
GUMMY
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-12-10
收藏
得分:0 
回复 2楼 韶志
缓冲区是啥- - 我看完书貌似没看仔细?
2013-12-10 23:35
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
for(;i<n;i++)
    {
        fflush(stdin);  //这句的作用就是清空缓冲区,因为你前面输入一个数(包括后面输入字串)会按下回车,回车键会当做字符键入
        gets(b[i]);
                for(o=0;o<7;o++)
        {
            c[i][o]=(b[i][o]-48);P
            if(b[i][o+1]=='\0')
                break;
            
        }
    }

三十年河东,三十年河西,莫欺少年穷!
2013-12-11 00:06
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
或者用getchar(); 也行,  就是接收回车键不让其键入b[i]

三十年河东,三十年河西,莫欺少年穷!
2013-12-11 00:08
快速回复:getchar 和 gets 用不了
数据加载中...
 
   



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

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