scanf讀到換行

相關問題 & 資訊整理

scanf讀到換行

fscanf()和scanf()一样,都是以白字符(<space>、<Tab>和<Enter>)作为分隔符的,就是说,当读到白字符时,就结束当前数据的读入,并将下一个数据赋给下一个变量。白字符不会当作数据的一部分赋给变量,而会被舍弃,但最后一个白字符会被保留在源数据流中。 例如 char s[20]; int a,b,c; 数据文件中的数据是:, 在大多数的格式字符处理时,scanf会忽略回车。要读取回车,只有使用%c的格式。 %c格式,对应变量为char型,功能为读取一个字符,并存入到对应的字符型变量中。 比如,循环读取字符,直到遇到回车结束,可以写作 char c; while(1) scanf("%c",&c); if(c == '-n') break;//读取到换行符,即回车,退出循环。 } 本回答由 ..., scanf中空格的意義 使用%s%d%f等等的格式輸入,在讀到目標之前有遇到空白或是TAB或是換行字元,都會自動略過,直遇到整數或是字串或是浮點數,但是如果是用%c的話, ... %[a-z]讀取字串中的字元只含a-z的字元,若讀到別的字元或是數字就停止 * %[^0-3]讀取一字串,直讀到遇到0123字元的出現就停止讀取。,因遇到scanf("%[^-n]",s);這行看不懂的程式所以上網Google了一下結果發現他有很大的優點能解決scanf 讀取字串時碰到空白字元會提早結束的問題以下為scanf ... scanf("%[^-n]",s); printf("%s-n",s); return 0; } 該程式值到我輸入換行的功能也就是enter鍵才會結束讀取就不會碰到空白提早結束 那[]掃描字符集合接受這樣的寫法[A-Z] , 1、函數:gets(字符指針)2、頭文件:stdio.h(c中),c++不需包含此頭文件3、原型:char*gets(char*buffer);4、功能:從stdin流中讀取字符串,直至接受到換行符或EOF時停止,並將讀取的結果存放在buffer指針所指向的字符數組中。注意:(換行符不作為讀取串的內容,讀取(接受)的換行符被轉換為null值,並由此來結束 ...,int a; // char b; // scanf( "%d", &a ); // scanf( "%c", &b ); // printf( "a = %d, b = %c-n", a, b ); // 輸入1 (enter) 2,第二個scanf("%c",&b) 仍然讀到enter ... 之前加入空白字元scanf( " %c", &b ); (2) 在第一個sca,推Feis:換行字元: scanf(" %c", ..); 07/15 11:11. → tfg09730820:%c前面都要加空白是嗎,感謝 07/15 11:18. → diabloevagto:你會直接跳第二次是因為讀到你按enter的訊號 07/15 11:20. → tfg09730820:謝謝 07/15 11:23. → loveme00835:"C語言" 不是關鍵字... 07/15 22:17. → hbzncu:也可以在抓取字元的前面加 , 2、写的时候写一个 -n 自动转换为 -r-n 造成一种误解,好象 -n 就是回车加换行. 你可以向一个文件中写入一个 '-n',用十六进制编辑器打开文件,会发现有两个字节 0D 0A, 就是 -r-n了,你读这个文件的时候,也只会读到一个字符 -n. ---------------------------------------------------- | 问题描述二:(分析scanf()和gets()读取字符串) |,假定您使用了一個%d說明符來讀取一個整數。scanf()函數開始每次讀取一個輸入字元,它跳過空白字元(空格、製表符和換行符)直到遇到一個非空白字元。因為它試圖讀取一個整數,所以scanf()期望發現一個數字字元或者一個符號(+或-)。如果它發現了一個數字或一個符號,那麼它就保存之並讀取下一個字元;就這樣,scanf()持續讀取 ... , 用家輸入的資料會放到一個file stream叫stdin printf("請輸入名字: "); scanf("%s",&name); 例如我輸入abc後按enter 那abc就入了name, 但那enter呢? 那是一個換行符號, 即'-n'或ASCII 10 所以在讀完名字後, 如果立刻用scanf("%c",&ch1); 那ch1就入了'-n'. 你可以把printf的%c改成%d看看.即

相關軟體 Code Compare 資訊

Code Compare
Code Compare 是一個免費的工具,旨在比較和合併不同的文件和文件夾。 Code Compare 集成了所有流行的源代碼控制系統:TFS,SVN,Git,Mercurial 和 Perforce。 Code Compare 作為獨立的文件比較工具和 Visual Studio 擴展出貨。免費版 Code Compare 使開發人員能夠執行與源代碼比較相關的大部分任務。Code Compar... Code Compare 軟體介紹

scanf讀到換行 相關參考資料
C语言fscanf语句读取文件时怎么换行?_百度知道

fscanf()和scanf()一样,都是以白字符(&lt;space&gt;、&lt;Tab&gt;和&lt;Enter&gt;)作为分隔符的,就是说,当读到白字符时,就结束当前数据的读入,并将下一个数据赋给下一个变量。白字符不会当作数据的一部分赋给变量,而会被舍弃,但最后一个白字符会被保留在源数据流中。 例如 char s[20]; int a,b,c; 数据文件中的数据是:

http://zhidao.baidu.com

c语言scanf 和读取回车_百度知道

在大多数的格式字符处理时,scanf会忽略回车。要读取回车,只有使用%c的格式。 %c格式,对应变量为char型,功能为读取一个字符,并存入到对应的字符型变量中。 比如,循环读取字符,直到遇到回车结束,可以写作 char c; while(1) scanf(&quot;%c&quot;,&amp;c); if(c == &#39;-n&#39;) break;//读取到换行符,即回车,退出循环...

http://zhidao.baidu.com

Hsian Studio: 字串輸出入處理

scanf中空格的意義 使用%s%d%f等等的格式輸入,在讀到目標之前有遇到空白或是TAB或是換行字元,都會自動略過,直遇到整數或是字串或是浮點數,但是如果是用%c的話, ... %[a-z]讀取字串中的字元只含a-z的字元,若讀到別的字元或是數字就停止 * %[^0-3]讀取一字串,直讀到遇到0123字元的出現就停止讀取。

http://hsian-studio.blogspot.c

scanf()特殊寫法- 紅燒小站 - Google Sites

因遇到scanf(&quot;%[^-n]&quot;,s);這行看不懂的程式所以上網Google了一下結果發現他有很大的優點能解決scanf 讀取字串時碰到空白字元會提早結束的問題以下為scanf ... scanf(&quot;%[^-n]&quot;,s); printf(&quot;%s-n&quot;,s); return 0; } 該程式值到我輸入換行的功能也就是enter鍵才會結束讀...

https://sites.google.com

scanf與gets讀取字符串的區別- 壹讀

1、函數:gets(字符指針)2、頭文件:stdio.h(c中),c++不需包含此頭文件3、原型:char*gets(char*buffer);4、功能:從stdin流中讀取字符串,直至接受到換行符或EOF時停止,並將讀取的結果存放在buffer指針所指向的字符數組中。注意:(換行符不作為讀取串的內容,讀取(接受)的換行符被轉換為null值,並由此來結束&nbsp;...

https://read01.com

Tips01

int a; // char b; // scanf( &quot;%d&quot;, &amp;a ); // scanf( &quot;%c&quot;, &amp;b ); // printf( &quot;a = %d, b = %c-n&quot;, a, b ); // 輸入1 (enter) 2,第二個scanf(&quot;%c&quot;,&amp;b) 仍然讀到enter .....

http://www.cc.ntut.edu.tw

[問題] C語言,scanf 字元- 看板C_and_CPP - 批踢踢實業坊

推Feis:換行字元: scanf(&quot; %c&quot;, ..); 07/15 11:11. → tfg09730820:%c前面都要加空白是嗎,感謝 07/15 11:18. → diabloevagto:你會直接跳第二次是因為讀到你按enter的訊號 07/15 11:20. → tfg09730820:謝謝 07/15 11:23. → loveme00835:&quot;C語言...

https://www.ptt.cc

【转载】深入了解scanf()getchar()和gets()等函数,C++系列教程 ... - 博客园

2、写的时候写一个 -n 自动转换为 -r-n 造成一种误解,好象 -n 就是回车加换行. 你可以向一个文件中写入一个 &#39;-n&#39;,用十六进制编辑器打开文件,会发现有两个字节 0D 0A, 就是 -r-n了,你读这个文件的时候,也只会读到一个字符 -n. ---------------------------------------------------- | 问题描述二:(分析...

http://www.cnblogs.com

每天學點C語言-如何使用scanf讀取任何輸入- iFuun

假定您使用了一個%d說明符來讀取一個整數。scanf()函數開始每次讀取一個輸入字元,它跳過空白字元(空格、製表符和換行符)直到遇到一個非空白字元。因為它試圖讀取一個整數,所以scanf()期望發現一個數字字元或者一個符號(+或-)。如果它發現了一個數字或一個符號,那麼它就保存之並讀取下一個字元;就這樣,scanf()持續讀取&nbsp;...

http://www.ifuun.com

請問輸入函式scanf()的問題以及getchar() | Yahoo奇摩知識+

用家輸入的資料會放到一個file stream叫stdin printf(&quot;請輸入名字: &quot;); scanf(&quot;%s&quot;,&amp;name); 例如我輸入abc後按enter 那abc就入了name, 但那enter呢? 那是一個換行符號, 即&#39;-n&#39;或ASCII 10 所以在讀完名字後, 如果立刻用scanf(&quot;%c&quot;...

https://tw.answers.yahoo.com