- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 3·4·2 scanf函数(格式输人函数 1. 一般形式 scanf(格式控制,地址表列) 说明; (1)对 unsigned型变量所需的数据,可以用%u,%d或%o,%x格式输入。 (2)可以指定输人数据所占列数,系统自动按它截取所需数据。如。scanf(”%3d%3d”,a,b); 输入:123456 系统自动将123赋给a,456赋给b。此方法也可用于字符型: scanf(“%3c”,ch); 如果从键盘连续输入3个字符abc,由于ch中只能容纳一个字符,系统就把第一个字符‘a’赋给ch。 (3)如果在%后有一个“*”附加说明符,表示跳过它指定的列数。例如, scanf(”%2d_%*3d_%2d”,a,b); 如果输入如下信息: 12_345_67/ 将 12赋给a,%*3d表示读入 3位整数但不赋给任何变量。然后再读入 2位整数 67赋给b。也就是说第2个数据“345”被跳过。 (4)输人数据时不能规定精度,例如, scanf(%7.2f”,a); 是不合法的,不能企图用这样的 scanf函数并输人以下数据而使 a的值为 12345. 67o 1234567/ 3 使用scanf函数时应注意的问题 (1)scanf函数中的“格式控制”后面应当是变量地址,而不应是变量名。 scanf(”%d,%d’,a,b) (2)如果在“格式控制”字符串中除了格式说明以外还有其他字符,则在输人数据时应输人与这些字符相同的字符。 scanf(”%d,%d”,a,b); 输入时应用如下形式: 3,4 scanf(“a=%d,b=%d,c=%d”,a,c); 输人应为以下形式; a=12,b=24,c=36/ (3)在用“%C”格式输人字符时,空格字符和“转义字符”都作为有效字符输入: scanf(“%c%c%c”cl,c2,c3); 如输入: a_,b_,c/ (4)在输人数据时,遇以下情况时该数据认为结束。 ①遇空格,或按“回车”或“跳格”(Tab)键。 ②按指定的宽度结束,如“%3d”,只取3列。 ③遇非法输人。 如 scanf(”%u%c%3f,&a,b,c); 若输入 例4.10 输入三角形的三边长,求三角形面积 习题 1、用scanf(“%3d%3c”,c1,c2)输入12345, abc时,变量c1,c2的值分别为-————。 (A)123,abc (B)123,4 (C)123,a (D)12345,abc 2、从键盘上输入一个-字符可以用————函数。 (A)getchar (B)putchar (C)printf (D)scanf 3、若int 数据占两个字节则执行以下语句的输出为-————。 Int k=-1; printf(“%d,%u\n”,k,k); (A)-1,-1 (B) –1,65535 (C)-1,32767 (D)-1,-32768 4、有两个字符a、b,则以下不正确的输出语句是-————。 (A)putchar(a,b); (B) putchar(”%c%c”,a,b); (C) printf(”%c%d”, a, b); (D) putchar(a), putchar(b); 5、用scanf(“%d%3c”,c1,c2)输入12345abc时,变量c1,c2的值分别为-————。 (A)123,abc (B)123,45a (C)12345,a (D)12345,abc 6、对以下程序,当输入数据的形式为:24,56↙时,输出结果是_______. main() {int a,b; scanf(″%d %d″,a,b) ; printf(″a + b = %d\n″,a + b) ;} A. a + b = 80 B. a + b = 24 C. a + b = 56 D.不确定值 1 7、有如下定义和输入语句,若要求a,b,c,d的值分别为23,45,′M′,′N′,正确的输入应该是_______。
文档评论(0)