精华内容
下载资源
问答
  • Java:循环输入字符串,输入0终止

    千次阅读 2019-06-28 16:04:00
    package ch01; import java.util.Scanner; public class string1 { public static void main(String[] args) { String s=" ";... System.out.print("请输入串字符:"); while(!s.equa...

    package ch01;

     

    import java.util.Scanner;

     

    public class string1 

    {

    public static void main(String[] args)

    {

    String s=" ";

    //String s1="0";

    System.out.print("请输入一串字符:");

    while(!s.equals("0"))

    {

     

    try

    {

    Scanner reader=new Scanner(System.in);

    s=reader.next();

    }

    catch(Exception e)

    {

    e.printStackTrace();

    }

    if(s.equals("0"))

    {

    System.out.println("输入结束!");

        System.exit(0);

    }

    System.out.println("您输入的字符串是:"+s);

     

    System.out.print("请输入一串字符:");

    }

    }

    }

     

    转载于:https://www.cnblogs.com/duanqibo/p/11103242.html

    展开全文
  • #includeint main(){char ...可是在运行的时候却出现了问题:①输入a后按下回车②用空格隔开之后再按下回车相信和我一样的大部分初学者,看着自己天衣无缝的代码,百思不得其解。让我们先来看看,在百度百科中,对于...

    #include

    int main()

    {

    char a,b;

    scanf("%c",&a);

    scanf("%c",&b);

    printf("%c,%c",a,b);

    }

    一段看上去很简单的代码,即使是C语言初学者也能看懂。

    可是在运行的时候却出现了问题:

    ①输入a后按下回车

    78ef2beab3570dfa60256dcf96be6523.png

    ②用空格隔开之后再按下回车

    7e4dffada700c3b8fedf5466ec221d7b.png

    相信和我一样的大部分初学者,看着自己天衣无缝的代码,百思不得其解。

    让我们先来看看,在百度百科中,对于scanf函数的解释

    ab22328de997b3e5d46eadf497cf9fb6.png

    在①中,我们只输入了a和回车。而这时,回车便留在了缓冲区中,直接被下一个scanf所吸收。在②中,输入了a、空格、b和回车,在这种情况下,我们输入的空格则进入了缓冲区中,导致b无法被读取,导致出现了问题。

    解决方法

    ①在第二个%c前加上空格,来抵消之前输入的空格/回车

    #include

    int main()

    {

    char a,b;

    scanf("%c",&a);

    scanf(" %c",&b);//在%c前加上一个空格

    printf("%c,%c",a,b);

    }

    ②在第一个%c后面加上一个*c,忽略下一个读入的字符

    #include

    int main()

    {

    char a,b;

    scanf("%c*c",&a);

    scanf("%c",&b);

    printf("%c,%c",a,b);

    }

    ③用fflush清空缓冲区

    #include

    int main()

    {

    char a,b;

    scanf("%c",&a);

    fflush(stdin);

    scanf("%c",&b);

    printf("%c,%c",a,b);

    }

    ④用getchar吸收字符

    #include

    int main()

    {

    char a,b;

    scanf("%c",&a);

    getchar();

    scanf("%c",&b);

    printf("%c,%c",a,b);

    }

    除方法①以外,其他三种方法不仅在使用scanf时有效,在使用getchar碰到类似问题的时候也有效,有兴趣的读者可以自行尝试。

    到此这篇关于C语言使用scanf连续输入字符串出现的问题的文章就介绍到这了,更多相关C语言scanf连续输入字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    展开全文
  • 循环 字符串输入

    千次阅读 2020-01-30 17:18:50
    题目:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。(p137) #include<stdio.h> int main() { char c[100];... //字符串输入函数 for(i;c[i]!='\0';i++) { ...

    题目:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。(p137)

    #include<stdio.h>
    int main()
    {
    	char c[100];									//定义储存字符串的数组
    	int n=0,m=0,x=0,y=0,i=0;
    	gets(c);										//字符串输入函数
    	for(i;c[i]!='\0';i++)
    	{  
    		if((c[i]>=65 && c[i]<=90) || (c[i]>=96 && c[i]<=121))
    			n++;
    		else if(c[i]==' ')
    			m++;
    		else if(c[i]>=48 && c[i]<=57)
    			x++;
    		else
    			y++;
    	}
    	printf("%d\n",n);
    	printf("%d\n",m);
    	printf("%d\n",x);
    	printf("%d\n",y);
    	return 0;
    }
    

    改善:通过使用getchar(),字符串不受数组限制。

    #include<stdio.h>
    int main()
    {
    	char c;
    	int n=0,m=0,x=0,y=0,i=0;
    	while((c=getchar())!='\n')
    	{
    		if(c>=65 && c<=90 || c>=96 && c<=121)
    			n++;
    		else if(c==' ')
    			m++;
    		else if(c>=48 && c<=57)
    			x++;
    		else
    			y++;
    	}
    	printf("%d\n %d\n %d\n %d\n",n,m,x.y);
    	return 0;
    }
    
    展开全文
  • c控制循环输入字符串停止

    千次阅读 2014-04-12 15:04:00
     当需要循环输入字符串进行处理,同时不知道输入字符串何时终止,所以要判断输入的是否时空行。一开始我想用scanf("%s", str);输入字符串,但是发现当不输入字符直接回车时,scanf()根本不接受,还会一直要你进行...

        当需要循环输入字符串进行处理,同时不知道输入字符串何时终止,所以要判断输入的是否时空行。一开始我想用scanf("%s", str);输入字符串,但是发现当不输入字符直接回车时,scanf()根本不接受,还会一直要你进行输入。后来使用了gets()方法才解决掉这个问题。

        可以用以下的方法:

        方法一:

        当gets()函数没有接受到输入时,它会给字符串一个‘\0’在最前方,

    #include <stdio.h>
    
    int main()
    {
    	char str[20];
    	while(1)
    	{
    		gets(str);
    		if(*str == '\0')
    			return 1;
    		printf("%s\n", str);
    	}
    	return 0;
    }

    方法二:

    #include <stdio.h>
    #include <string.h>
    int main()
    {
    	char str[20];
    	while(1)
    	{
    		gets(str);
    		if(strcmp(str, "") == 0)
    			return 1;
    		printf("%s\n", str);
    	}
    	return 0;
    }


    转载于:https://my.oschina.net/u/1584433/blog/221403

    展开全文
  • 只有当Ctrl+Z单独位于一行的行首时,表示输入的终止 当Ctrl+Z位于行中、行末时,输入都不会结束。 代码: #include <iostream> #include <string> using namespace std; int main() { string s; ...
  • 单独一行的输入 #include <iostream> #include <string> using namespace std; int main() { //对于char* / char[] char s[1001]; cout<<"Please input char[]:"<<endl; cin.getline...
  • C语言循环输入字符串#结束写入文件

    千次阅读 2013-08-03 21:00:50
    #include #include #include #include #include #define BUF_SIZE 128 void my_read(int fd) { int size; char buffer[BUF_SIZE]; do { memset(buffer,'\0',BUF_SIZE);... size=read(fd,buffer,BUF_SIZE
  • 需求在一个字符串输入循环中,判断输入的是字符串还是Esc按键,如果是Esc按键则结束循环
  • C语言使用scanf语句输入字符串或者在for循环向字符数组中输入出现scanf语句不执行 例如简单地向字符数组中添加字符 #include&lt;stdio.h&gt; int main() { char he[10]; int i; for(i = 0; i &lt; 3;...
  • #include<stdio.h> #include<math.h> int main() { char a[80]; int i=0; printf("enter a string:"); scan...
  • Java中Scanner连续读取键盘输入字符串

    千次阅读 2020-06-15 14:00:04
    需要注意的是此时需要在两个语句间多加一条scanner.nextLine(); 以吸收换行符,否则会出现跳过第一条读取语句,直接执行第二条读取语句。 下面展示一些 实例。 System.out.println("学生学号:");...
  • 49-C++使用for循环访问字符串

    千次阅读 2018-09-06 22:57:17
    例如,下列程序让用户能够输入一个字符串,然后按相反的方向逐个字符地显示该字符串。在这个例子中,可以使用string对象,也可以使用char数组,因为它们都让您能够使用数组表示法来访问字符串中的字符。下列程序使用...
  • 但是实际操作发现我的字符串无论输入的多长多短,都是输入的什么输出的就.在C语言中,输入输出字符串有以下两种方式:1 用scanf/printf输入输出。scanf/printf是C语言的格式化输入输出函数,可以用于输入输出各种...
  • 编写一个程序,清除用户输入字符串中的空格符并将之输出。 更多资料请点击:我的目录 #include <stdio.h> #include <string.h> int main() { char character[120]; printf("请输入字符串:"); ...
  • 输入字符串进行排序后输出 输入描述: 输入有两行,第一行n 第二行是n个空格隔开的字符串 输出描述: 输出一行排序后的字符串,空格隔开,无结尾空格 #include <stdio.h> int main() { int n, i...
  • 如何连续输入字符串

    千次阅读 2019-05-06 11:10:04
    连续输入可以含空格的字符串 #include<bits/stdc++.h> using namespace std; int main() { string a; while(getline(cin,a)) { cout<<a<<endl; } return 0; } 输入不带空格的 #inc...
  • 1.从键盘循环录入录入一个字符串,输入"end"表示结束 2.将字符串中大写字母变成小写字母,小写字母变成大写字母,其它字符用"*"代替,并统计字母的个数 举例: 键盘录入:Hello12345World 输出结果:hELLO*****...
  • 除了在定义字符数组时初始化外,还可以通过scanf从键盘输入字符串。下面写一个程序: # include <stdio.h> int main(void) { char str[10]; //str是string的缩写, 即字符串 printf(“请输入字符串:”); scanf...
  • C++中输入字符串的几种方法

    千次阅读 多人点赞 2020-02-17 20:09:39
    C++输入字符串的几种方法cincin.get()cin.getline()getline()gets()getchar() C++中的字符串输入方式有: 1.cin >> 2.cin.get() 3.cin.getline() 4.getline() 5.gets() 6.getchar() cin 第一种用法是逐个...
  • java连续输入字符串遇到回车停止

    千次阅读 多人点赞 2019-06-19 23:07:10
    连续输入字符串用空格隔开,遇到回车停止 用split()方法,将字符串用分隔符进行分离 split 分离;使分离 public String[] split(String regex) 参数为String型。在参数位置设置分隔符,例如:“/”(斜杠) ,“ ”...
  • 各种清空缓存区方法都做的不好,这里给出一种能够获得多组字符串的方式。
  • C语言scanf输入字符串,举例详解

    千次阅读 多人点赞 2020-05-12 18:24:55
    除了在定义字符数组时初始化外,还可以通过scanf从键盘输入字符串。下面写一个程序: #include <stdio.h> int main(void) { char str[10]; //str是string的缩写, 即字符串 printf("请输入字符串:"); scanf("%...
  • java如何输入字符数组

    千次阅读 2021-05-26 20:56:07
    字符串类型:in.next();in.nextLine(); 但是并没有in.nextChar(); 有时候我们想要用Scanner接收char类型数据,而不是接收String。 这时,我们可以先输入String,再转为char 需要用到charAt() 函数 正常使用...
  • for循环遍历字符串

    千次阅读 2021-02-15 00:02:00
    # for循环和while循环很类似 # 1. 可以让程序中的某段代码重复执行 ...# for循环遍历字符串中的每一个数据 my_str = "hello" for value in my_str: if value == "l": print("l要出现啦。。。") print.
  • C和C++循环读入字符的三种方式

    万次阅读 2018-11-02 14:38:16
    下文实现循环读入字符并且输出,以EOF结束. 在linux 系统中按ctrl+d结束 1.C语言使用scanf读入 #include &amp;amp;lt;iostream&amp;amp;gt; #include&amp;amp;lt;stdio.h&amp;amp;gt; #...
  • 输入字符串和输出字符串的方法

    千次阅读 2016-10-31 15:51:09
    字符串输入输出
  • ls = input('请输入字符串:' ) #for循环 for j in ls: print(j) print('这是一条分割线') #while循环 ite = iter(ls) while True: try: each = next(ite) except StopIteration: break print(each) 下面是...
  • C语言中从键盘输入字符串时的一些问题

    万次阅读 多人点赞 2019-05-17 20:52:10
    C语言中从键盘输入字符串时的一些问题 1.scanf() scanf()在输入字符串时有很大的弊端, 例如: 1). scanf()在从键盘读入字符时并不会根据所定义的字符数组的大小来控制读入多少个 , 而是从scanf( ) 中传入的地址开始...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 488,818
精华内容 195,527
关键字:

怎么循环输入字符串