标题:怎么把scanf()函数中的\n去掉
取消只看楼主
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
结帖率:100%
 问题点数:0 回复次数:2 
怎么把scanf()函数中的\n去掉
程序代码:
#include <stdio.h>
#define MUNBER 40
struct mane{
    char surname[MUNBER];//姓氏

    char called[MUNBER];//

    char middle[MUNBER];//名和姓中间的名字

};
struct socialSecurity{
    int serialnumber[MUNBER];
};



int main(void)
{
    int n=0;
    int q=0;
    struct mane person[MUNBER];
    struct socialSecurity people[MUNBER];
    while(n<=MUNBER)
    {
    printf("请输入名:");
    gets(person[n].called);
    printf("请输入名和姓中间的名字:");
    gets(person[n].middle);
    printf("请输入姓:");
    gets(person[n].surname);
    printf("请输入社保号:");
    scanf("%d",&people[n].serialnumber);
    printf("%s %s %.1s-%d\n",person[n].called,person[n].surname,person[n].middle,people[0].serialnumber);
    printf("退出请按1,不退请按2.\n");
    scanf("%d",&q);
    if(q==1)
    {
        break;
    }

    n++;
    }
    return 0;
}

scanf()读取了\n,怎么把它去掉啊,或者有什么函数可以输入数字并把\n去掉的?


[此贴子已经被作者于2018-9-23 18:17编辑过]

搜索更多相关主题的帖子: scanf int person printf 输入 
2018-09-23 18:07
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
得分:0 
回复 3楼 forever74
怎么让它输出123?
2018-09-24 15:04
kuaisha
Rank: 2
等 级:论坛游民
帖 子:120
专家分:30
注 册:2016-8-3
得分:0 
回复 2楼 Mr_doge
我怎么确定一串数字一个是整数变量还是数字字符,另外我调试过了,我的123输入成功,但为什么是错误输出。另外,我试过拿while(getchar()!='\n')改成while(scanf()!='\n'),为什么这样子就不行,scanf()不是也读取\n吗。
2018-09-24 15:15



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




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

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