C++入门经典-例2.5-使用附加格式说明scanf函数的格式输入

1:代码如下:

// 2.5.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"


int main()
{
    long iLong;                                        /*长整型变量*/
    short iShort;                                        /*短整型变量*/
    int iNumber1=1;                                    /*整型变量,为其赋值为1*/
    int iNumber2=2;                                    /*整型变量,为其赋值为2*/
    char cChar[10];                                        /*定义字符数组变量*/

    printf("Enter the long integer\n");                        /*输出信息提示*/
    scanf("%ld",&iLong);                                    /*输入长整型数据*/
    
    printf("Enter the short integer\n");                        /*输出信息提示*/
    scanf("%hd",&iShort);                                /*输入短整型数据*/
    
    printf("Enter the number:\n");                            /*输出信息提示*/
    scanf("%d*%d",&iNumber1,&iNumber2);                    /*输入整型数据*/

    printf("Enter the string but only show three character\n");        /*输出信息提示*/
    scanf("%3s",cChar);                                    /*输入字符串*/

    printf("the long interger is: %ld\n",iLong);                  /*显示长整型值*/
    printf("the short interger is: %hd\n",iShort);                /*显示短整型值*/
    printf("the Number1 is: %d\n",iNumber1);                    /*显示整型iNumber1的值*/
    printf("the Number2 is: %d\n",iNumber2);                    /*显示整型iNumber2的值*/
    printf("the three character are: %s\n",cChar);                /*显示字符串*/
    return 0; 
}

/*1:格式字符l附加格式表示长整型*/
/*2:附加格式字符h表示短整型*/
/*3:格式字符“*”的作用是表示制定的输入项在读入后不赋给相应的变量,代码中这句话的含义就是,第一个%d是输入iNumber1变量,第二个%d是输入iNumber2变量,但是在第二个
%d前面有一个“*”附加格式说明,这样第二个输入的值被忽略,也就是说,iNumber2变量不保存相应输入的值*/
/*4:%s表示字符串的格式字符,将一个n(整数)放入%s中间,这样就制定了数据的宽度。在程序中,scanf函数中制定的数据宽度为3,那么在输入一个字符串时,只接收前3个字符*/
View Code

运行结果:

posted @ 2017-09-11 09:45  一串字符串  阅读(615)  评论(0编辑  收藏  举报