C语言 scanf混合输入

一、hello

gcc hello.c -o main.o 生成main.o文件

gcc hello.c 生成 a.out

执行 ./main.out 或者 ./a.out 运行程序

复制代码
#include "stdio.h"

int main()
{
    printf("hello\n");
}

运行结果

复制代码
sumuchen@chem4111 Ccode % gcc hello.c -o main.out
sumuchen@chem4111 Ccode % ./main.out
hello
sumuchen@chem4111 Ccode % 

二、scanf整型输入

用空格分割

复制代码
#include "stdio.h"

int main(){
    int a,b,c;
    printf("请输入3个数\n");
    scanf("%d%d%d",&a,&b,&c);
    printf("你输入的数据是%d,%d,%d\n",a,b,c);

    return 0;
}

结果

复制代码
sumuchen@chem4111 Ccode % ./scanfint 
请输入3个数
1 2 3
你输入的数据是1,2,3

用逗号分隔

复制代码
#include "stdio.h"

int main(){
    int a,b,c;
    printf("请输入3个数\n");
    scanf("%d,%d,%d",&a,&b,&c);
    printf("你输入的数据是%d,%d,%d\n",a,b,c);

    return 0;
}

结果

复制代码
sumuchen@chem4111 Ccode % gcc scanf.c 
sumuchen@chem4111 Ccode % ./a.out 
请输入3个数
1,2,3
你输入的数据是1,2,3

三、scanf 字符输入

空格也是字符 ,字符输入不能用空格

复制代码
#include "stdio.h"

int main(){
    char a,b,c;
    
    printf("请输入3个字符\n");
    scanf("%c%c%c",&a,&b,&c);
    printf("你输入的字符是%c,%c,%c\n",a,b,c);

    return 0;
}

结果

复制代码
sumuchen@chem4111 Ccode % ./scanf
请输入3个字符
abc
你输入的字符是a,b,c

四、混合输入

在输入数值数据时,如输入空格、回撤,tab键或遇非法字符(不属于数值字符)认为该数据结束

复制代码
#include <stdio.h>

int main() {
    int a;
    char b;
    float c;

    printf("请输入一个整数,一个字符和一个浮点数:\n");
    scanf("%d%c%f", &a, &b, &c);

    printf("你输入的数据是%d%c%f\n", a, b, c);
    return 0;
}

结果

复制代码
sumuchen@chem4111 Ccode % ./scanf
请输入一个整数,一个字符和一个浮点数:
2c2.3
你输入的数据是2c2.300000
相关推荐
upgrador1 小时前
基础知识:C++ STL构造函数的左闭右开惯例及其实现原理
开发语言·c++
灯厂码农2 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
wuyk5552 小时前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机
qq_241585613 小时前
可用在中断中浮点数打印类似printf
c语言
凯瑟琳.奥古斯特3 小时前
K次取反最大化数组和解法(力扣1005)
开发语言·c++·算法·leetcode·职场和发展
林中青木3 小时前
CT重构原理及C++代码实现
c++·计算机视觉·重构
满天星83035773 小时前
Protobuf的介绍及使用
c++
☆cwlulu3 小时前
调试排查工具介绍(gdb、strace、Valgrind等)
开发语言·c++·嵌入式硬件·ubuntu
卷无止境4 小时前
C++ 存储类说明符(Storage Class Specifier)大横评
c++·后端
卷无止境4 小时前
C++ 编程的一大坑:非常量全局变量是"万恶之源"
c++·后端