通常基本输入输出;
1.输入第一类:输入不说明有多少个Input Block,以EOF为结束标志。
while(scanf("%d %d",&a,&b) != EOF)【注意后面没有分号,否则不执行下面语句】
{
.......
}
【scanf函数返回值就是读出的变量个数,如:scanf(“%d %d”,&a,&b)
如果有两个整数输入,返回值为2;如果有一个整数输入,返回值为1;如果没有整数输入,返回值为-1
EOF是一个预定义的常量,等于-1】
2.输入第二类:输入一开始就会说有n的Input Block,下面接着是n个Input Block
scanf("%d",&n);
for(i=0; i<n; i ++)
{......
}
3.输入第三类:输入不说明有多少个Input Block,但以某个特殊输入为结束标志
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d %d",&a,&b) && (a!=0&&b!=0))
printf("%d\n",a+b);
}
4.输入第四类:以上三种情况的组合
5.输入第五类:输入是一整行的字符串
C语法:char buf[20];
gets(buf);
【说明】
(1)scanf("%s %s",str1,str2),在多个字符串之间用一个或多个空格分隔
(2)若用gets函数,应为gets(str1);gets(str2);字符串之间用回车符作分隔
(3)通常情况下,短字符用scanf函数,长字符用gets函数
(4)getchar函数每次只能接受一个字符,用c = getchar()来使用。
(5)getline是一个函数,它可以接受用户的输入的字符,直到已达到指定个数,或者用户输入了特定的字符。
函数原型:istream& getline(char line[],int size,char endchar = '\n');
char line[]:就是一个字符数组,用户输入的内容存入在该数组中
int size :最多接受几个字符?用户超过size规定的字符数将不被接受。
char endchar: 当用户输入特定字符时,自动结束。默认是回车键。