ACM基础篇-入门级问题

基本输入输出

输入:

1.Scanf函数返回值就是读出的变量个数,如:scanf( “%d %d”, &a, &b ); 如果只有一个整数输入,返回值是1,如果有两个整数输入,返回值是2,如果一个都没有,则返回值是-1。 2.EOF是一个预定义的常量,等于-1。

C语法:
while(scanf(“%d %d”,&a, &b) != EOF)
{
….
}
C++语法:
while( cin >> a >> b )
{
….
}

3.输入是一整行字符串时:

C语法:
char buf[20];
gets(buf);
C++语法:
如果用string buf;来保存:
getline( cin , buf );
如果用char buf[ 255 ]; 来保存:
cin.getline( buf, 255 );
说明:
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 :当用户输入endchar指定的字符时,自动结束。默认是回车符。
即:n结合后两个参数,getline可以方便地实现: 用户最多输入指定个数的字符,如果超过,则仅指
定个数的前面字符有效,如果没有超过,则用户可以通过回车来结束输入。

输出:

(っ•̀ω•́)っ✎⁾⁾ 坚持技术学习、内容输出与分享,您的支持将鼓励我继续创作!(*/ω\*)
( • ̀ω•́ )✧如有疑问或需要技术讨论,请留言或发邮件到 aclearzhang@qq.com.(*・ω< ) 
  • 本文作者:: AClearZhang
  • 本文链接:: 1172.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!