SCANF函数应用技巧(尤其%[]的用法) 您所在的位置:网站首页 c语言scanf的正确使用及技巧 SCANF函数应用技巧(尤其%[]的用法)

SCANF函数应用技巧(尤其%[]的用法)

2023-06-27 11:07| 来源: 网络整理| 查看: 265

 一.scanf函数输入格式中的字符串.

    scanf函数输入格式中也可以含有普通字符串, 但他的含义是这些字符必须在输入中出现 ,例如:

          int num;           Scanf("hello %d", & num);

   他的含义是首先要求输入一个hello字符串,然后再输入一个十进制数. 注意在等待输入时 忽略hello与要输入的数之间 的空格,制表符,回车. 因此这两种输入都是正确的:

          hello 1234           hello1234

      二.scanf函数的返回值.

      看到一个学弟写的程序:

             #i nclude              main()              {                  int num;                  printf("please input the student's score: ");                  scanf("%d",&num);

                 if((num100))                  {                       printf("The score put isnt fine. please run and input again.");                  }                  else if(num>90)                  {                       printf("The grade is A.");                  }                                   else if((num>80)&&(num                  int num,int result=0;                  printf("please input the student's score: ");                                     while(result==0)          {      fflush(stdin);  /*  清空输入缓冲区. */      if(result!=1)printf("Please input a digital score: ");      result=scanf("%d",&num);              }               ............................               }             一切OK!

    三.scanf函数中一个参数的应用.          在scanf函数中,我们可以使用 %c来读取一个字符,使用 %s 读取一个字符串. 但是读取字 符串时不忽略空格,读字符串时忽略开始的空格, 并且读到空格为止,因此我们只能读取一个单词,而不是整行字符串.因此一般使用fgets来读 取一个字符串.

   其实scanf函数也可完成这样的功能,而且还更强大.

   这里主要介绍一个参数,%[ ] ,这个参数的意义是读入一个字符集合. [ ]是个集合的标 志,因此%[ ]特指读入此集合所限定的那些字符, 比如 %[A-Z] 是输入大写字母,一旦遇到不在 此集合的字符便停止. 如果集合的第一个字符是" ^ ", 这说明读取不在" ^ " 后面集合的字 符,既遇到" ^ " 后面集合的字符便停止.注意此时读入的字符串是可以含有空格的.

  Eg.  输入一个字符串, 这个字符串只含有小写字符.遇到第一个不是小写字符时停止.

      scanf("%[a-z]",str);

  Eg.  想输入一个字符串, 遇到 "." 停止,可设计如下:

     scanf("%[^.]", str);

    使用这个参数,你可以完成许多强大的功能

    点击这里打开原网址

    附加:感觉自己学的好少好少少少少。。。

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有