Fork me on Github Fork me on Gitee

C温故补缺(十):输入输出

输入输出

printf()和scanf()

用来格式化输入输出,它们都是有返回值的

int printf()返回输出的内容的长度

#include<stdio.h>
int main(){
    int c=printf("abcdefg\n");
    printf("%d",c);
}

输出:8

转义字符占一个

int scanf() 返回的是是输入的参数的个数

#include<stdio.h>
int main(){
    int a,b;
    int c=scanf("%d%d",&a,&b);
    printf("%d",c);
}

正确输入时,返回值为2

输入格式不匹配时,返回值为0

按Ctrl C/Z强制结束输入时,返回值为-1

getchar()和putchar()

格式:int getchar(void), 能够从标准输入中读字符,一次只能读取一个字符,返回这个字符的ASCII

如果输入一个字符串,只读第一个字符,想读完可以用循环,因为每次读完一个字符,会自动把指针下移,读下一个字符

#include<stdio.h>
int main(){
    int c=getchar();
    printf("%d",c);
}

格式int putchar(int) ,putchar可以输出一个ASCII码的字符形式,并返回这个ASCII码

#include<stdio.h>
int main(){
    int c=getchar();
    printf("%d",putchar(c));
}

gets()和puts()

char* gets(char* )

int puts(const char* )

#include<stdio.h>
int main(){
    char str[100];
    gets(str);
    puts(str);
}

gets()是需要参数的,所以要实现定义字符串str,然后把输入的字符串存在str,再用puts输出

gets的返回值char *就是输入的str,puts输出成功返回0,失败返回EOF

posted @ 2022-11-12 22:25  Tenerome  阅读(35)  评论(0编辑  收藏  举报