Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
允许用户使用C在命令提示符中键入多行_C - Fatal编程技术网

允许用户使用C在命令提示符中键入多行

允许用户使用C在命令提示符中键入多行,c,C,我真的不了解C。所以,我的问题和想法可能是误导性的、荒谬的或令人尴尬的。请原谅我 问题说明程序应该从命令提示符获取用户输入。输入文本将包含数字、字母和空格字符。他们也会有多条线路 示例程序使用的是,因此printf和scanf 根据教科书,不鼓励使用cin和cout。为了使用cin和cout,我需要,但我不能包括。即使我可以包含,但我再也不能包含 我也不能使用字符串。我听说C不允许使用string,但我真的不明白为什么 我的问题是,;当您要求用户使用printf(“输入您的文本:”)键入内容时

我真的不了解C。所以,我的问题和想法可能是误导性的、荒谬的或令人尴尬的。请原谅我

问题说明程序应该从命令提示符获取用户输入。输入文本将包含数字、字母和空格字符。他们也会有多条线路

示例程序使用的是
,因此
printf
scanf

根据教科书,不鼓励使用
cin
cout
。为了使用
cin
cout
,我需要
,但我不能
包括
。即使我可以包含
,但我再也不能
包含

我也不能使用
字符串
。我听说
C
不允许使用
string
,但我真的不明白为什么


我的问题是,;当您要求用户使用
printf(“输入您的文本:”)键入内容时,他们只能键入一行。。一旦他们点击
回车
,程序就会收到它

是否可以使用
scanf
允许用户通过键入
Shift+Enter
等方式键入多行

由于
string
不可用,我是否应该使用
char
数组,如
char inputText[999]
?这能给我足够的空间吗

我的两个问题是,;如何允许用户在命令提示符下键入多行,我应该使用什么数据类型来保存输入的文本

我把它搜索出来了,但是它们混合了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);
}
#包括
#包括
int nc=0,nw=0,bs=0,c,nq=0,nl=0;
int main()
{
printf(“文本分析程序”\n\n);
printf(“输入文本:”);
而((c=getchar())!=EOF)
{

如果((c>='A'&&c='A'&&c='0'&&c只需添加另一个
getchar()
调用:

#include <stdio.h>

int main() {
  printf("Press any key to continue. ");
  fflush(stdout);
  getchar();
  return 0;
}
#包括
int main(){
printf(“按任意键继续”);
fflush(stdout);
getchar();
返回0;
}

事实上,直到您键入一整行或点击EOF,它才会返回,但它应该足够好了。

只需添加另一个
getchar()
调用:

#include <stdio.h>

int main() {
  printf("Press any key to continue. ");
  fflush(stdout);
  getchar();
  return 0;
}
#包括
int main(){
printf(“按任意键继续”);
fflush(stdout);
getchar();
返回0;
}
事实上,直到您键入一整行或点击EOF,它才会返回,但它应该足够好了。

这些:

#include <iostream>
#include <string>
cin
cout
#包括
#包括
cin
库特

是C++特定的。它们在C.根本不存在。记住C和C++是两种不同的语言。< /P> 当程序终止时,窗口正在关闭这一事实是您使用的开发系统的一个功能。如果您从命令提示符运行程序,这不会发生——或者IDE中可能有一个选项告诉它保持窗口打开,直到您显式关闭它。但是如果您不想这样做,J.F.Sebastian的sol这是个好主意

另一个提示:查看
中的
isalpha()
isdigit()
函数,它们是:

#include <iostream>
#include <string>
cin
cout
#包括
#包括
cin
库特

是C++特定的。它们在C.根本不存在。记住C和C++是两种不同的语言。< /P> 当程序终止时,窗口正在关闭这一事实是您使用的开发系统的一个功能。如果您从命令提示符运行程序,这不会发生——或者IDE中可能有一个选项告诉它保持窗口打开,直到您显式关闭它。但是如果您不想这样做,J.F.Sebastian的sol这是个好主意


另一个提示:看看
isalpha()
isdigit()
中的功能我们不会为您做家庭作业;您需要展示您迄今为止所做的尝试,并解释它没有如您所期望的那样发挥作用。我们可以帮助您找出哪里出了问题。如果我们为您这样做,您将不会学到任何东西,我们中的一些人可能会试图在将来修复您所做的事情。:)请编辑您的帖子以提供上述内容,这里的人会很乐意尝试帮助您。提示:您可以在循环中调用
scanf
,直到它只得到一个换行符('\n'))好的…代码在家里…现在我在工作…..我回家的时候会回复…THKS…如果你的程序是C,你不能使用<代码> <代码>或<代码> CIN < /C>或<代码> cOUT >代码>;这些字符是C++的。对于字符分类,你应该使用宏如<代码> iSalpHAh()/<代码>和<代码> ISDig.()
来自
#包括
。我们不会为您做家庭作业;您需要展示您迄今为止所做的尝试,并解释它如何没有达到预期效果。我们可以帮助您找出哪里出了问题。如果我们为您这样做,您将不会学到任何东西,我们中的一些人可能会试图在将来修复您所做的事情。:)请编辑您的帖子以提供上述内容,这里的人会很乐意尝试帮助您。提示:您可以在循环中调用
scanf
,直到它只得到一个换行符('\n'))好的…代码在家里…现在我在工作…..我回家的时候会回复…THKS…如果你的程序是C,你不能使用<代码> <代码>或<代码> CIN < /C>或<代码> cOUT >代码>;这些字符是C++的。对于字符分类,你应该使用宏如<代码> iSalpHAh()/<代码>和<代码> ISDig.()
来自
#包括