这个系列是用来解决学校C语言课程的,并不适用于ACM和OI
本系列博客分为2部分,分别是 C语言程序设计笔记(网课) 和 课堂总结(线下课)
欢迎转载ssw02的博客: https://www.cnblogs.com/ssw02/p/15994555.html
C语言程序设计课堂总结4
本节我们来解决输入输出的问题,正好之前我的笔记里也不详细
1.引入
C语言,众所周知,没有I/O语句,所有的I/O操作由函数进行代替。
当然,这里不需要我们来单独写字符输入和输出的函数,我们要做的只是调用库里预设好的函数就行
比如我们常见的头文件: #include<stdio.h>
里面包含的scanf()
和printf()
函数
2.字符输入和输出函数
先介绍用于读取单个字符的函数getchar()
和输出单个字符的函数putchar()
#include <stdio.h>
int main(){
char c;//定义一个字符型常量,当然这里也可以用Int
c = getchar();//读入一个字符,并且赋值给c
putchar(c);// c可以为为字符常量、变量或表达式
return 0;
}
purchar
的用法很多,比如可以purchar('A') ;
3.格式输出字符
我们先介绍格式输出字符,在介绍格式输入字符会轻松很多
功能:按指定格式向显示器输出数据
格式:printf("格式控制串",输出列表)
格式控制串含有:
格式说明:修饰符,用于指定输出的格式
普通字符或转义序列:原样输出
详细的图解如下
下面是一些常见的格式字符
这里提醒两点:
1.格式字符和输出项个数应当匹配,并且会按照顺序逐一输出
2.当格式字符和输出项的类型不匹配的时候,会按照格式字符输出。
修饰符:顾名思义,就是用来附加说明格式的
备注:在终端执行的时候,上面两个小方格显示为空格
举个例子:
#include<stdio.h>
int main(){
int a=1234;
float f=123.456;
char c[]="Hello,world!";
printf("%-8d,%8d\n",a,a);
printf("%-10.2f,%10.1f\n",f,f);
printf("%-10.5s,%10.3s\n",c,c);
}
/*输出结果
1234 , 1234
123.46 , 123.5
Hello , Hel
*/
剩下的一些输出方式这里就不做赘述了
这里再强调一下在Dev-c++编译器中参数求值的顺序问题(由右边到左边)
#include<stdio.h>
int main(){
int a = 3 ;
printf("%d %d",a++,a--) ; //这里就是先计算了a--,再计算a++
return 0 ;
}
//输出结果 2 3
格式输入字符
有了格式输出字符的基础,我们现在来看一下格式输入字符
格式: scanf(“格式控制串”,地址表)
功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束
地址表列:&变量名1,&变量名2,... 如:&a,&b,&c
一般以空格、TAB或回车键作为分隔符
输入时会用到的一些修饰符