0
点赞
收藏
分享

微信扫一扫

GITLAB常见问题总结

唯米天空 2024-06-07 阅读 9

一、问题        

        ⼀个 scanf( ) 函数由格式控制和地址表列两部分组成,那么关于 scanfO函数的格式控制都包括什么?

二、解答

scanf( ) 函数的格式控制的⼀般格式为:

%[修饰符]类型

        类型指的是格式字符,不同的数据类型⽤不同的格式字符,表⽰常见类型的种类如表所示。

格式类型

说明

d

输⼊⼗进制整数

u

输⼊⽆符号⼗进制整数

o

输⼊⽆符号的⼋进制整数

x

输⼊⽆符号的⼗六进制整数

f或e

输⼊实型数

c

输⼊单个字符

s

输⼊字符串

        scanf( ) 函数的格式说明字符串中的“⼜”中的修饰符也有很多种,常见的如表所示。

字符

说明

l

⽤于输⼊长整型数据

h

⽤于输⼊短整型数据

域宽

⽤⼗进制整数指定输⼊的宽度,即字符数
*表示在输⼊项读⼊后不赋予相应的变量,即跳过该项输⼊值

        在了解了格式字符中的修饰符和类型两部分后,通过⼀个例⼦,对 scanf( ) 函数的格式说明进⼀步理解,相应代码如下。

main()
{
    int a, b;
    scanf("%3d%5d", &a, &b);
    printf("a=%d\n", a);
    printf("b=%d\n", b);
}

运⾏程序,输⼊12345678,显⽰结果如下所示。

12345678
a=123
b=45678

        由于已经设定了域宽,因此⽆间断地输⼊12345678后,系统会⾃动将123赋给a,将剩下的五位赋给 b。

三、总结

        上述例⼦只介绍了域宽的应⽤,其余修饰符和格式字符的应⽤与此例相同,只是不同的修饰符有不同的作⽤,不同的格式字符代表输⼊不同的数据类型数据⽽⼰。

举报

相关推荐

0 条评论