scanf与gets连用

  • 输入字符串用什么符号
    答:输入字符串用scanf与gets符号。1、每个字符串中不含空格、制表符及回车这种情况,用scanf是再好不过的了,比如,测试数据中只有两个字符串:abc与def。2、字符串中含有空格、制表符,但不含回车,对于这种情况,scanf无能为力,因为scanf用空格、制表符及回车作为字符串的分界符。对于一个含有空格、制表...
  • C语言gets 和 scanf
    答:我忍不住说一下,希望已经给出答案的同学们不要介意。scanf("%s%f",name[i],&score);如果你输入 “abc 1234”(注意 引号不是输入的数据,只是为了方便阅读)这个时候 name[i]会读取数据的,但是读取的数据遇到空格就视为读取结束。这样剩余下的数据就是 一个空格外加1234.当score开始读取的时候...
  • C语言中关于gets与scanf的问题(有例)
    答:用 while(getchar()!='\n');就是让getchar吞掉scanf缓存中的字符,直到输入一个回车符为止。你要知道scanf的运行机制,scanf扫描的时候,先把字符放在缓冲区,等待用户按回车后将缓存的内容传送到程序,如果你是 %d 而你却输入了一个字母, 这个时候 scanf不会跳过字符,会反复把你输入的字符传给%d...
  • c语言scanf gets问题
    答:scanf的%s格式接收字符串时,以空格或回车作为终止符。而gets只以回车作为终止符。你这里s1==aaa s2==bbb s3=ccc ddd所以输出会这样 puts输完最后输出'\n',就是换行
  • C语言字符型二维数组用scanf和gets如何输入,举个例谢谢
    答:include <stdio.h> int main(){ char s[3][20];int i;printf("输入第一行:");gets(s[0]);printf("输入第二行:");scanf("%s",s[1]);for(i=0;i<2;i++){ printf("%s\n",s[i]);} return 0;}
  • c语言scanf函数和gets()问题,如图
    答:首先,说说scanf函数和gets()的区别。1、scanf函数遇到空格时则输入结束。也就是说你输入的How are you?,其中第一个单词给了b[20],剩下的全部给了c[20]。 2、gets函数的作用是从终端输入一个字符串到字符数组。
  • c语言,gets函数的详细用法?
    答:c语言,gets()函数用来从标准输入设备(键盘)读取字符串直到换行符结束,但换行符会被丢弃,然后在末尾添加'\0'字符。其调用格式为:gets(s)。其中s为字符串变量(字符串数组名或字符串指针)。如果为单个字符指针,编译连接不会有错误,但运行后内存溢出错误。
  • 求助,如何用Scanf或Gets函数将连续输入的,以回车隔开的多个字符串分别写...
    答:1.需要用二维字符数组 2.原因在于gets()的返回值是传入的参数的地址,而不是读取的字符,以下程序可以达到你的目的,注意输入CTRL+D时要另起一行。//--- include <stdio.h> int main(void){ char a[100][80];int i,n;for (i=0; ;++i ) { if((a[i][0]=getchar())==EOF) { a...
  • C语言中scanf与gets的疑惑,请高手们帮解决
    答:用%s输入字符串的时候,空格、回车符、tab符作为输入数据的分隔符不能被读入,当遇到这些分隔符的时候,系统认为输入结束。从键盘输入how are you?,实际只是把how输入到了数组,因此,用%s输入字符串的时候不能带有空格、回车符、tab符。而专门的字符输入函数gets就可以输入。当然了,也可以不用gets...
  • C语言 格式输入问题
    答:书上说scanf语句以回车 空格 做为结束符 书上说的没错 puts()用法是输出,然后另起一行 gets()用法是 获取整行,包括回车符 a1=aa a2=bb 输出是 aa bb 当你再按下回车的时候 gets(a3); 会获取回车符 gets(a4); 会获取cc dd 因为你又按了回车 大小超出了 数组大小 cc空格dd...

  • 网友评论:

    昌元15028085932: scanf能不能与gets一起用,请说明原因,详细点哈. 我试过,好像不能 -
    44593周信 : gets函数可以一次接收一行输入串,其中可以有空格,也就是说空格可以做为字符串的一部分输入. 而scanf函数接收的字符串不会含有空格,即遇到字空格时,认为字符串输入结束,也就是说空格是scanf默认的结束符号.scanf和gets不能混合...

    昌元15028085932: Linux下的C编程,为什么scanf和gets函数连在一起用,后面的gets函数没有效果? -
    44593周信 : 当使用scanf语句,你打完回车以后.这个回车会作为一个字符读入到缓冲区中,当执行到gets语句时,就会自动读入这个换行符.相当于gets读入了一个'\n'.只要在scanf语句后加一句getchar();就行了

    昌元15028085932: C语言字符型二维数组用scanf和gets如何输入,举个例谢谢 -
    44593周信 : #include <stdio.h> int main() { char s[3][20]; int i; printf("输入第一行:"); gets(s[0]); printf("输入第二行:"); scanf("%s",s[1]); for(i=0;i<2;i++) { printf("%s\n",s[i]); }return 0; }

    昌元15028085932: C语言中scanf和gets不可以同时出现在一段程序里吧?为何下列程序可以同时出现呢 -
    44593周信 : 可以出现在一段程序中.gets(str1); 是用字符串的方法 读整一行字符,允许夹空白.scanf("% 是 按格式 读入数据.需要分2行输入,第一行给 gets, 第2行给 scanf

    昌元15028085932: 为什么混合读入不能用scanf?我试了scanf和gets只输回车 是一样的呀 -
    44593周信 : 不一样,gets抛弃回车,而scanf不会.可以用下面的程序测试: #include <stdio.h> int main() {char tmp[100], c;scanf("%s", tmp);scanf("%c", &c);printf("%s\n%c\n", tmp, c);return 0; } 这里随意输入合法字符串后回车,是不会要求输入字符c的值的,程序出错,换成gets程序或者在读入字符串后加个getchar()就正确了.

    昌元15028085932: c语言中,输入一个字符串使用scanf(”%s”)和gets()有什么区别 -
    44593周信 : 其实用scanf("%s",);和gets();本质上没有什么区别,都是将字符数据输入到制定的内存单元中. 假设定义有字符数组(C语言把字符串按字符数组处理)str[30],那么我们向里面输入字符就可以为: scanf("%s",str); gets(str); 他们都...

    昌元15028085932: C语言gets 和 scanf -
    44593周信 : 我忍不住说一下, 希望已经给出答案的同学们不要介意.scanf("%s%f", name[i], &score); 如果你输入 “abc 1234” (注意 引号不是输入的数据,只是为了方便阅读) 这个时候 name[i]会读取数据的,但是读取的数据遇到空格就视为读取结束.这样剩余下的数据就是 一个空格外加1234.当score开始读取的时候,读到的第一个数据是一个空格,而不是希望的float类型的数据,因此整个缓冲区的流都乱了,所有的数据全部没有用处. 解决的办法就是在 %s与%f之间加上一个空格,就可以解决这个问题.

    昌元15028085932: 程序设计中用scanf和gets输入字符串时有什么不同? -
    44593周信 : 可以用如下两种方式输入字符串,示例程序段如下: char string[15]; gets(string); /*遇到回车认为输入结束*/ scanf("%s",string); /*遇到空格认为输入结束*/ ... 所以在输入的字符串中包含空格时,应该使用gets输入.

    昌元15028085932: C语言中,,,输入字符串用gets和用循环结构然后加scanf输入,,有什么区别,好像会出现一个不能识别空格 -
    44593周信 : 代表输入结束 gets()是用来输入字符串的,应该也是以回车代表输入结束 scanf()是什么都可以输入,scanf()是以回车代表输入结束 scanf()中会用到空格 是用作分隔符的 因为scanf()可以输入多个变量,如 canf("%d%d",&a,&b);//表示输入两个整形的数分别赋给变量a、b 在输入另个数时用空格间隔开 但如果canf("%d,%d",&a,&b);//如果两个%d中间用逗号间隔,那么输入时也必须用逗号作为两个数间隔.希望你可以理解 另外,虚机团上产品团购,超级便宜

    昌元15028085932: gets和scanf同在一个程序中出现使程序产生错误 -
    44593周信 : #include <stdio.h> #include <stdlib.h> #include <conio.h> main() { char c1[100],c2[100]; /*这里应当是一个数组或指针*/ gets(c1); scanf("%s",&c2); printf("%s\n",c1); printf("%s\n",c2); system("pause"); } 上述程序,我在tc2.0下面,不用fflush也可以显示正确结果.

    热搜:scanf gets getchar \\ 5个例子搞懂scanf \\ static int \\ int \\ putchar \\ sst \\ gets和scanf一起用 \\ 为什么scanf不能用 \\ 如何解决vs用不了scanf \\ scanf后面一定要加&吗 \\ printf \\ scanf的简单例子 \\ 多个scanf连用 \\ vs中scanf不能用 \\ scanfs与scanf的使用 \\ vs为什么不能用scanf \\ c语言scanf用法举例 \\ getchar \\ c中scanf怎么用 \\ scanf语句怎么用 \\

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网