C语言中关于输入用scanf()函数时候,怎样判断换行?比如两行数字123和456,怎么样分别存入数组A和B中?

如题所述

//输入1 2 3后,按回车,接着输入4 5 6,按回车


#include <stdio.h>


int main() 

{

    int a[3], b[3], i;

    for (i=0; i<3; i++)

        scanf("%d", &a[i]);

    for (i=0; i<3; i++)

        scanf("%d", &b[i]);

    printf("数组a的内容是:");

    for (i=0; i<3; i++)

        printf("%d ", a[i]);

    printf("\n");

    printf("数组b的内容是:");

    for (i=0; i<3; i++)

        printf("%d ", b[i]);

    printf("\n");

    return 0;

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-25

#include <stdio.h>                 

void main()

{

int a,b,c,t;

printf("Enter a,b,c:");

scanf("%d%d%d",&a,&b,&c);

if(c>b) {t=a;a=b;b=t;}

if(c>a) {t=a;a=c;c=t;}

if(b>a) {t=a;a=b;b=t;}

printf("a=%d",a);

}

比如执行这个程序,输入 a b c三个数时,在三个数中间加空格,再按回车就可以计算了,如果把三个数粘连在一起,程序会认为只输入了一个数,不会进行计算。


第2个回答  2013-03-25
scanf("%d,%d",&A,&B)
——>输入123,456 原因%d和%d之间是,进行隔开的
若是%d %d 就输入123 456
第3个回答  2013-03-25
1 2 3回车 ,然后4 5 6回车,数字之间要有空格追问

能不能写个代码看下

追答

#include
int main()
{
int a[3],b[3];
scanf("%d%d%d",&a[0],&a[1],&a[2]);
scanf("%d%d%d",&b[0],&b[1],&b[2]);
printf("%d,%d,%d,%d,%d,%d",a[0],a[1],a[2],b[0],b[1],b[2]);
}自己运行看看,看是不是满足你的要求

第4个回答  2013-03-25
scanf("%d\n%d\n",&a, &b);//试试

C语言中关于scanf()函数分隔符问题?
scanf不指定分割符号时,默认以空格、回车、制表符(tab),作为分割符号,可间隔多个分割符号。至于你最后打印的c,那是换行符对应的ascii码,因为你最后输入的字符是回车。

C语言scanf函数过滤换行符号吗?
比如:int a;char c;scanf("%d", &a);c = getchar();输入:123 回车 可以发现,getchar()函数没有阻塞等待用户输入,而此时若是按%c格式打印变量c,则会发现换行了 经过我后续的实验,也是可以证明,位于缓冲区队列首部,也就是scanf取缓冲区数据时第一个取到的是'\\n',它是会无视的 暂时...

C语言用scanf语句 输入几个数值时,数值之间用什么隔开
scanf("%d&%d", &a, &b); 输入两个数之间必须有一个&号 如果没有特别指明分隔符号,默认是空格或回车。

C语言中scanf怎样插入换行符?是scanf("%d\\n",&l)么??为什么在运行时还是...
呵呵,你混淆了printf()和scanf()了吧?scanf是用来输入的,当你按回车键之后它就结束输入,命令行里面也就换行了。scanf("%d",&l)就行了。

C语言中,scanf语句输入数组时可以分行吗?
namespace std;int main(){ int i,j,a[4][4]; \/\/for(i=0;i<=3;i++)没看出这个循环是什么意思 for(i=0;i<=3;i++)\/\/多重循环,不能都用一个变量 { for(j=0;j<=3;j++) { scanf("%d",&a[i][j]); } \/\/printf(...

...让输入一个数之后自动换行,需要在scanf()之后怎么写?
scanf()函数就是根据你输入的换行符(你按回车键)来判断你的输入是否结束。如果你输入一个数,比如你要输入123,但你输入1是不是就自动换行。。。,所以不行

求问一下关于c语言scanf函数的一些问题,就是说输入数据时,到底应该用...
1、scanf输入流的概念,当执行到scanf函数时,会检查输入流,如果为空,则要求用户输入。如果不为空,则根据scanf的格式化参数从输入流中读取 2、%d 用来输入一个整数类型,会跳过开始的空白字符(空格 tab 回车都算空白字符),一直扫描到第一个数字开始,然后开始往后扫描,当碰到空白字符或者非数字...

在c语言中怎么实现输入scanf 时能够换行输入。比如输入1然后换行输入2...
scanf可以手动输入换行,例如输入1 ,回车,2。scanf() 函数的声明:int scanf(const char *format, ...)1、&a、&b、&c 中的 & 是地址运算符,分别获得这三个变量的内存地址。2、%d%d%d是按十进值格式输入三个数值。输入时,在两个数据之间可以用一个或多个空格、tab 键、回车键分隔。如果...

scanf函数怎样输出很多字符串中间要用空格隔开呢?
scanf输入默认以空格字符分隔,除了%c 直接输入就行了 如果你说的是输出,用printf,自己在里面加空格 printf("1 2 3 %d %d %d", 4, 5, 6);

c语言中scanf函数输完后为什么会自动跳行,怎样能不让他跳行
如 fflush(stdin);scanf("",);fflush(stdin);的作用是 清空缓存区 你输入完后 会回车 结束本次输入 这时回车也被当做一个字符 放到了缓存区 当你用了多个scanf();函数时 下一个函数会认为你给它的字符是回车 所以就不再让你再次输入了 给你举个完整的例子就是: 比如你想循环输入...

相似回答