c语言中scanf("\n%c",&a);和scanf("\n");中的\n有什么作用啊
xj(int x);
char i,a,b;
void main()
{
scanf("%c",&i);
printf("%c\n",i);
scanf("\n%c",&a);
printf("%c",a);
}
和#include<stdio.h>
xj(int x);
char i,a,b;
void main()
{
scanf("%c",&i);
printf("%c",i);
scanf("%c",&a);
printf("%c",a);
}为什么运行结果不一样 展开
在c语言中,scanf("%d%*c", &n);中%d表示读整数,%*c表示忽略掉一个字符型的输入项,&n表示对象n在内存中简敬的地址。scanf("%d%*c", &n);整体表示输入两个数,并且忽略掉第二个字符型的输入项,然后将输入的对象存入n。
在C语言的scanf函数中,格式字符串的一般形式为:%[*][输入数据宽度][长度]类型(其中有方括号[]的项为任选项)。不同的格式符类型有不同的功能。
扩展资料
C语言scanf函数的语法规则:
1、语法
#include <指咐穗stdio.h>
int scanf( const char *format, ... );
类似函数有
int scanf(const char *format, ...);
int fscanf(FILE *stream, const char *format, ...);//定输入流
int sscanf(const char *str, const char *format, ...);//指定缓存区
2、规则
scanf()函数根据由format(格式)指定的格式从stdin(标准输入)读取,并唯卜保存数据到其它参数. 它和printf()有点类似. format(格式)字符串由控制字符,空白字符和非空白字符组成. 控制字符以一个%符号开始。
参考资料来源:百度百科——scanf
比如:
("1\仿手滑n1")打出来是备腊
1
1
("1 1")打出来是
1 1
int a[2][3];
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&a[j][k]);
当然,这样你看不到要求输入的悔汪提示,scanf("%d",&a[j][k]); 前边还应该加一条语句,变成这样:
int a[2][3];
for(i=0;i<碧州仔2;i++)
for(j=0;j<3;j++)
{
printf("enter a number:");
scanf("%d",&a[j][k]);
}
不是,每次只能输入一个数,因为a[i][j]只是代表的一个数组中的一个元素,也就是一个数。
这是一个转义字符(也是一种字符)形式像\0是结束标记一样。