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
相关推荐
枕星而眠15 分钟前
Linux 线程:原理、属性、实战与面试避坑
linux·运维·c语言·面试
_李小白29 分钟前
【C++学习笔记】新特性之inline变量
c++·笔记·学习
桀人1 小时前
C++——模板初阶(收录在专栏C++入门到精通)
开发语言·c++
Lumbrologist1 小时前
【C++】零基础入门 · 第 2 节:变量、基本数据类型与输入输出
java·开发语言·c++
XX風1 小时前
CMake / Make / Ninja / MSVC / GCC / Clang / MSBuild —— 完整体系化理解
c++
码完就睡2 小时前
C语言——动态内存
c语言·开发语言
Peter·Pan爱编程2 小时前
10. new_delete 不是 malloc_free 的包装
c++·人工智能·算法
故事和你913 小时前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
fpcc4 小时前
c++编程实践——历史记录的管理
c++
arronKler5 小时前
MySQL命令行导出数据库
c语言·数据库·mysql