麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C > 正文

在輸入輸出字符串時scanf(),printf()和gets(),puts()的區(qū)別淺談

2020-01-26 16:21:47
字體:
供稿:網(wǎng)友

1.scanf("%s",str)和gets(str)

scanf("%s",str)和gets(str)均可用于輸入字符串到字符數(shù)組變量str,但scanf("%s",str)只讀到輸入字符的空格或回車處,而gets(str)讀到回車處結(jié)束,所以當句子中單詞由空格分開時要用后者來輸入,如下圖所示:

需要強調(diào)一點,scanf("%s",str)在遇到'/n'(回車)或' '(空格)時輸入結(jié)束,但'/n'(回車)或' '(空格)停留在出入緩沖區(qū),如處理不慎會影響下面的輸入;gets(str)遇到'/n'(回車)時輸入結(jié)束,但'/n'(回車)已被替換為'/0',存儲于字符串中,輸入緩沖中沒有遺留的'/n'(回車),不會影響后續(xù)的輸入。測試程序的代碼為:

復(fù)制代碼 代碼如下:

View Code

#include<iostream>
#include<stdio.h>

using namespace std;

int main()
{
  //freopen("http://home//jack//jack.txt","r",stdin);
  char str[80];
  char ch;
  cout<<"1、請輸入一個沒有空格的字符串:"<<endl;
  scanf("%s",str);
  cout<<"用scanf(/"%s/",str)輸入的字符串為:"<<str<<endl;
  cout<<"再輸入一次作為對比:"<<endl;
  while((ch=getchar())!='/n'&&ch!=EOF);
  gets(str);
  cout<<"用gets(str)輸入的字符串為:"<<str<<endl;
  cout<<"2、請輸入一個有空格的字符串:"<<endl;
  scanf("%s",str);
  cout<<"用scanf(/"%s/",str)輸入的字符串為:"<<str<<endl;
  cout<<"再輸入一次作為對比:"<<endl;
  while((ch=getchar())!='/n'&&ch!=EOF);
  gets(str);
  cout<<"用gets(str)輸入的字符串為:"<<str<<endl;
  return 0;
}

其中while((ch=getchar())!='/n'&&ch!=EOF);是處理輸入緩存中的遺留的辦法;fflush(stdin)方法對某些編譯器不適用,不是標準C支持的函數(shù)。

2、printf(“%s”,str)和puts(str)

先看如下代碼:

復(fù)制代碼 代碼如下:

View Code

#include<iostream>
#include<stdio.h>

using namespace std;

int main()
{
  //freopen("http://home//jack//jack.txt","r",stdin);
  char str1[80]="hello";
  cout<<"用printf(/"%s/",str1)輸出的字符串為:";
  printf("%s",str1);
  cout<<"用puts(str1)輸出的字符串為: ";
  puts(str1);
  char str2[80]="hello world";
  cout<<"用printf(/"%s/",str2)輸出的字符串為: ";
  printf("%s",str2);
  cout<<"用puts(str2)輸出的字符串為: ";
  puts(str2);
  return 0;
}

從運行結(jié)果可以看出,printf(“%s”,str)和puts(str)均是輸出到'/0'結(jié)束,遇到空格不停,但puts(str)會在結(jié)尾輸出'/n',printf(“%s”,str)不會換行。printf(“%s/n”,str)可以替換puts(str)。

完。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 欧美 日韩 亚洲 中文 | 久久久久久久亚洲精品 | 日本羞羞的午夜电视剧 | 涩涩屋av | 国产亚洲美女精品久久久2020 | 成人小视频免费在线观看 | av在线免费电影 | 精品国产一区二区三 | 日本a级免费 | 日本不卡视频在线观看 | sese在线视频 | 亚洲无毛av | 91精品免费在线 | 欧美乱码精品一区 | 欧美久久久一区二区三区 | 国产精品一区99 | 欧美日韩精品不卡一区二区三区 | 一区二区久久精品66国产精品 | 中文字幕精品一区久久久久 | 日韩视频一区二区在线观看 | 性爱视频在线免费 | 奶子吧naiziba.cc免费午夜片在线观看 | 久草手机在线 | 欧美性生交xxxxx免费观看 | 久久国产在线观看 | 看片一区二区三区 | 国产精品久久久久久久久久妇女 | 成人444kkkk在线观看 | 国产自在自线午夜精品视频在 | 舌头伸进添的我好爽高潮网站 | 久久恋| 日韩黄色影视 | www.99久| 久久综合久久综合久久综合 | 视频一区二区不卡 | 久久成人国产精品入口 | 成人午夜免费国产 | 国产免费传媒av片在线 | 懂色粉嫩av久婷啪 | 国产一区精品视频 | 夜夜夜精品视频 |