码迷,mamicode.com
首页 > 其他好文 > 详细

scanf,printf函数的返回值

时间:2016-04-18 20:28:57      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:

参考自:https://www.douban.com/note/220299804/

scanf函数的返回值有三种情况:

    (1)第一种就是返回一个正整数,表示输入成功元素的个数。

    (2)第二种如果返回的值为0,代表输入不匹配,没有正确输入任何值,所以有了下面的代码。

    (3)第三种返回-1(EOF)也就是输入流结束。Windows:CTRL + Z表示输入结束,Linux:CTRL + D。

printf函数的返回值为输出元素的个数。printf("%d\n", 1);  //2

 

#include<stdio.h>
#include<string.h>
int main()
{
    int num[100];
    for(int i = 0; i < 10; i++)  //Input:1 2 3 4 ? ? 6 7 8 9 0
    {
        if(scanf("%d", &num[i]) == 0)
        {
            scanf("?");
            num[i] = -1;
        }
    }
    for(int i = 0; i < 10; i++)
    {
        if(i != 0) printf(" ");
        printf("%d", num[i]);
    }
    printf("\n");                //Output:1 2 3 4 -1 -1 6 7 8 9 0
    return 0;
}

 

再加上一个:

二维数组在内存当中的存储是连续的,所以有下面代码。

#include<stdio.h>
#include<string.h>
int main()
{
    int len;
    char str[10][1];
    scanf("%s", str[0]); //abcde
    len = strlen(str[0]);
    printf("%d", len); //5 因为二位数组的存储在内存当中是连续的
    puts(str[0]); //abcde
    return 0;
}

 

scanf,printf函数的返回值

标签:

原文地址:http://www.cnblogs.com/burning-flame/p/5405465.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!