写一个程序,从键盘输入一个字符串,再从最右边开始向左数,按三位一个逗号的形式输出。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写一个程序,从键盘输入一个字符串,再从最右边开始向左数,按三位一个逗号的形式输出。相关的知识,希望对你有一定的参考价值。
写一个程序,从键盘输入一个字符串,再从最右边开始向左数,按三位一个逗号的形式输出。例如:输入abcdefgh,输出:ab,cde,fgh; 输入:123456,输出:123,456
//是C写的,最大长度我定义的100你可以根据须要改,实在不行就用malloc开辟,#include<stdio.h>
#include<string.h>
void main()
int i, n ;
char str[100];
gets(str);
n=strlen(str);
for(i=0;i<n;i++)
printf("%c",str[i]);
if((n-i-1)%3==0&&i!=n-1)
printf(",");
printf("\n");
参考技术A 这是C++写的你改一下就行了:
#define N 100
void main()
char arry[N];
cout<<"please input arry:"<<endl;
cin>>arry;
for(int i=0;i<N;i++)
if(arry[i]!='\0')
cout<<arry[i];
else
break;
if((i+1)%3==0)
cout<<",";
cout<<endl;
参考技术B 经测试,完全符合要求:
import java.io.*;
public class TestWindow
public static void main(String [] args)
byte [] temp=new byte [100];
try
System.in.read(temp);
catch(IOException e)
e.printStackTrace();
String s=new String(temp);
char [] out=s.trim().toCharArray();
int count=0;
for(int i=0;i<out.length;i++)
if(count==3)
System.out.print(",");
count=0;
System.out.print(out[i]);
count++;
System.out.println();
201671010127 2016-2017-11 从键盘读入中文字符串遇到的问题
上周测试户籍管理系统时,我偶然发现了一个问题,在IDE下运行该程序时,如果输入为中文字符串时会遇到一些问题。下面我就以一个简单的程序来演示该问题:
首先我先写一个从键盘读入一个中文字符串,然后输出该字符串的程序,代码如下:
import java.util.Scanner;
public class Demo
{
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
String t=new String();
System.out.println("请输入一个字符串");
t=in.nextLine();
System.out.println(t);
}
}
接下来我先将输入法调成中文状态,截图如下:
接着运行该程序,截图如下:
此时在输入时会产生如上图所示的错误,会将输出的提示都改变。
然而,当我将输入法调成英文状态时,截图如下:
再次运行该程序,截图如下:
此时程序错误完全没有了,我特向大家请教其中的缘由,希望各位园友指教,谢谢大家!
以上是关于写一个程序,从键盘输入一个字符串,再从最右边开始向左数,按三位一个逗号的形式输出。的主要内容,如果未能解决你的问题,请参考以下文章
C语言,键盘输入一个2位以上的任意数,输出这个数的第m位开始,到第n位结束的数。