我並不真正瞭解C.因此,我的問題和想法可能是誤導或荒謬的或令人尷尬的。請原諒我..允許用戶在命令提示符下鍵入多行,使用C
該問題指出,該程序應從命令提示符處獲得用戶輸入。輸入文本將包含數字,字母和空格字符。他們也會有多條線..
示例程序使用<stdio.h>
,因此使用printf
和scanf
。根據課本,不鼓勵使用cin
和cout
。爲了使用cin
和cout
,我需要<iostream>
但我不能include
<iostream>
。即使我可以包括<iostream>
,但我不能include
<stdio.h>
了。我不能使用string
。我聽說C
不允許使用string
,但我不明白爲什麼。
我的問題是;當你要求用戶輸入printf("Enter your text: ");
時,他們只能輸入一行。一旦他們擊中Enter
,程序就會收到它。
有沒有辦法使用scanf
來允許用戶鍵入多行,例如鍵入Shift+Enter
。
由於string
不可用,我應該使用char
數組,如char inputText[999]
?這會給我足夠的空間嗎?
我的兩個問題是;如何讓用戶在命令提示符下鍵入多行,以及我應該使用什麼數據類型來保存輸入的文本?
我GOOGLE了它,但他們混合C++和C ..
感謝所有和我再次道歉,如果我的問題是時間給你浪費..
大家好,我已經做了..但我只有一個多問題..
#include <stdio.h>
#include <stdlib.h>
int nc=0,nw=0,bs=0,c, nq=0, nl=0;
int main()
{
printf("Text Analysis Program\n\n");
printf("Enter your text:");
while((c=getchar())!=EOF)
{
if((c>='A' && c<='Z') || (c>='a' && c<='z'))
{
nc++;
}
else if(c>='0' && c<='9')
{
nq++;
}
else if (c==' ')
{
nw++;
bs++;
}
else if (c=='\n')
{
nw++;
nl++;
}
}
printf("Number of characters: %d;\n",nc);
printf("Number of words: %d;\n",nw);
printf("Number of numerical quantities: %d;\n",nq);
printf("Number of blank spaces: %d;\n",bs);
printf("Number of lines entered: %d;\n",nl);
exit(0);
}
在結束時,顯示的答案後,cmd
屏幕關閉馬上..我刪除exit(0)
它仍然是相同的。是否有任何命令凍結屏幕,並出現Press any key to continue
我們不打算爲你做功課,你需要展示你到目前爲止所嘗試的內容,並解釋它如何不如預期的那樣工作。我們可以幫助您找出問題所在。如果我們爲你做這件事,你將不會學到任何東西,我們中的一些人最終可能會試圖解決你將來工作的事情。 :)請編輯您的帖子以提供上述信息,此處有人會樂意嘗試和幫助您。提示:你可以在循環中調用scanf,直到它變成新行('\ n')。 –
好的..代碼是在家..現在我在工作..所以,我會回覆時,我回家.. .. – william
如果你的程序是C,你不能使用''或'cin'或'cout';那些是C++設施。 –