C++程序设计 从键盘上输入一行字符串,存入一个字符数组,然后输出该字符串

供稿:hz-xin.com     日期:2025-01-13
C++程序设计 从键盘上输入一行字符串,存入一个字符数组,然后输出该字符串

#include

#include

using
namespace
std;
int
main()
{
char
tmp;
cout<<"Please
input
some
words(The
amounts
less
200
is
OK
else
will
lose
words):"<<endl;
ofstream
fout("test.txt");
while(cin.get(tmp))
{
if(tmp=='
')
break;
if(tmp='a')
tmp=tmp-32;
fout<<tmp<<flush;
}
fout.close();
ifstream
fin("test.txt");
char
ch[200];
fin.getline(ch,200);
cout<<ch<<endl;
fin.close();
return
0;
}
干嘛非要用数组呢,c++的string字符串类型不更安全。

思路:先遍历字符串,如果找到该字符后,把后面的所有字符复制到另一个字符串。
例如:
#include #include int main (){char ch1[]="123456789",ch2[20],a='4';int i=0,j=0;while(ch1[i++]!=a);while(ch1[i]){ch2[j++]=ch1[i++];}ch2[j]='\0';puts(ch2);return 0;}/*输出:56789 */

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
char tmp;
cout<<"Please input some words(The amounts less 200 is OK else will lose words):"<<endl;

ofstream fout("test.txt");
while(cin.get(tmp))
{
if(tmp=='\n')
break;
if(tmp<='z'&&tmp>='a')
tmp=tmp-32;
fout<<tmp<<flush;
}
fout.close();

ifstream fin("test.txt");
char ch[200];
fin.getline(ch,200);
cout<<ch<<endl;
fin.close();
return 0;
}
干嘛非要用数组呢,c++的string字符串类型不更安全。

#include <iomanip>
class Arr
{
public:
Arr(){x=0;y=0;p=NULL;}
~Arr()
{
for(int i=0;i<x;i++)
delete[] p[i];
delete[] p;
}
int getX();
int getY();
int **getP();
void inputArr(int x,int y);
private:
int x,y;
int **p;
};
void Arr::inputArr(int m,int n)
{
int i,j;
x=m;
y=n;
p=new int*[m];
for (i=0;i<m;i++)
p[i]=new int[n];

for (i=0;i<x;i++)
{
for(j=0;j<y;j++)
cin>>p[i][j];
}
}
int Arr::getX()
{
return x;
}
int Arr::getY()
{
return y;
}
int** Arr::getP()
{
return p;
}
int** multiArr(Arr a,Arr b)
{
int i,j,k;
int **a1,**b1,**c1;
c1=new int*[a.getX()];
for (i=0;i<a.getX();i++)
c1[i]=new int[b.getY()];

a1=a.getP();
b1=b.getP();
for (i=0;i<a.getX();i++)
{
for (j=0;j<b.getY();j++)
{
for (k=0;k<a.getY();k++)
{
c1[i][j]=a1[i][k]*b1[k][j];
}
}
}
return c1;
}
int main(int argc, char* argv[])
{
Arr a,b;
int **c;
int x1,y1,x2,y2,i;
cout<<"input the row and column of first array:"<<endl;
cin>>x1>>y1;
a.inputArr(x1,y1);
cout<<"input the row and column of second array:"<<endl;
cin>>x2>>y2;
b.inputArr(x2,y2);
if(a.getY()==b.getX())
{
c=new int*[a.getX()];
for (i=0;i<a.getX();i++)
c[i]=new int[b.getY()];

c=multiArr(a,b);
cout<<"the result is:"<<endl;
for (i=0;i<a.getX();i++)
{
for(int j=0;j<b.getY();j++)
cout<<setw(6)<<c[i][j];
cout<<endl;
}
}
else
cout<<"the two array don't multiplicate!"<<endl;
return 0;
}

#include <iomanip>
class Arr
{
public:
Arr(){x=0;y=0;p=NULL;}
int getX();
int getY();
int **getP();
void inputArr(int x,int y);
private:
int x,y;
int **p;
};
void Arr::inputArr(int m,int n)
{
int i,j;
x=m;
y=n;
p=new int*[m];
for (i=0;i<m;i++)
p[i]=new int[n];

for (i=0;i<x;i++)
{
for(j=0;j<y;j++)
cin>>p[i][j];
}
}
int Arr::getX()
{
return x;
}
int Arr::getY()
{
return y;
}
int** Arr::getP()
{
return p;
}
int** multiArr(Arr a,Arr b)
{
int i,j,k;
int **a1,**b1,**c1;
c1=new int*[a.getX()];
for (i=0;i<a.getX();i++)
c1[i]=new int[b.getY()];

a1=a.getP();
b1=b.getP();
for (i=0;i<a.getX();i++)
{
for (j=0;j<b.getY();j+)
{
for (k=0;k<a.getY();k++)
{
c1[i][j]=a1[i][k]*b1[k][j];
}
}
}
return c1;
}
int main(int argc, char* argv[])
{
Arr a,b;
int **c;
int x1,y1,x2,y2,i;
cout<<"input the row and column of first array:"<<endl;
cin>>x1>>y1;
a.inputArr(x1,y1);
cout<<"input the row and column of second array:"<<endl;
cin>>x2>>y2;
b.inputArr(x2,y2);
if(a.getY()==b.getX())
{
c=new int*[a.getX()];
for (i=0;i<a.getX();i++)
c[i]=new int[b.getY()];

c=multiArr(a,b);
cout<<"the result is:"<<endl;
for (i=0;i<a.getX();i++)
{
for(int j=0;j<b.getY();j++)
cout<<setw(6)<<c[i][j];
cout<<endl;
}
}
else
cout<<"the two array don't multiplicate!"<<endl;
return 0;
}

C语言题目输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的...
修改后:include <stdio.h> int main(){ int letter=0,space=0,number=0,others=0;char nextchar;printf("Input your string\\n");for(;nextchar!='\\n';){ scanf("%c",&nextchar);if('a'<=nextchar&&nextchar<='z'||'A'<=nextchar&&nextchar<='Z')letter++;else if(nextchar==' '...

C++小程序
C++程序设计语言,以其强大的功能和灵活的特性,在许多领域都得到了广泛应用。下面是一个简单的C++小程序示例,用于实现字符串的加密功能。程序通过键盘输入一个密钥和字符串,然后对字符串进行加密处理。具体加密规则是,将字母按照字母表顺序向后移动指定的密钥位数,如果移动后超出字母表范围,则从头开始...

C语言程序设计:从标准输入设备上输入一个字符串,分别统计其中每个数字...
include <stdio.h> void main(){ char str[1024];int i,num[4]={0};memset(str,0,1024);gets(str);for(i=0;str[i]!='\\0';i++){ if(str[i]>='0'&&str[i]<='9')num[0]++;else if(str[i]==' ')num[1]++;else if(str[i]>='A'&&str[i]<='Z'||str[i]>='...

编程设计题:编写一个程序,将输入的一行字符复制到输出,复制过程中将...
如果是C:(题目不太清楚,只能做下回答,但已经符合楼主的要求了)include<stdio.h> void main(){char a1;int i,j;j=100;scanf("%d",&j);for(i=1;i<=j;i++){scanf("%c",&a1);if (a1==' ')printf("-");else printf("%c",a1);} } ...

c语言 从键盘输入一行字符,分别统计其中数字字符,字母字符和其他字符...
可以参考下面的代码:include <stdio.h> intmain(){ inta,b,c,ch;a=b=c=0;\/\/计数器初始化为0.while((ch=getchar())!='\\n')\/\/循环读取字符,到换行结束。{ if(ch>='0' && ch<='9')\/\/数字 a++;else if((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))\/\/字母 b...

C语言程序设计:输入一行字符,统计出其中单词的个数,个单词之间用空格分...
楼主请看这里这里 决对好用的程序 include main(){ char str[20];int i=0,j,count=0;printf("请输入要统计的字符以回车结束:");gets(str);while(str[i++]!='0'){ if(str[i]==' '){ i++;while(str[i]==' ')\/\/判断连续空格 { i++;} count++;} } printf("单词书为:%d...

C语言编程,怎么从键盘输入一行字符,要求少于20个
include<stdio.h> int main(){ int c[20];printf("Please enter a character:");while((c[20]=getchar())!='#')\/*这里用c[20]等于将输入的字符直接赋值给下标为20的哪个数组元素也就是说你的C[0]到c[19]都没赋值,而且你要输入的是20个元素而c[20]是第21个元素了, 再有就是while...

输入一行字符,使用循环结构程序设计求它的长度。例如输入iu789OP{},则...
include<stdio.h>void main(){int num=0, i;char chr[100];printf("请输入字符串");scanf("%s", chr);for(i=0; i<100; i++){ if(chr=='\\r' || chr=='\\n' && chr==0){ break; } num++;}printf("length=%d\\r\\n",num);} ...

程序设计题目:从键盘上输入一个字符串,放在数组中,要求将字符串中的...
下面是一个 Java 程序,它可以从键盘上读取一个字符串,并将其中的大写字母转换为小写字母,同时将小写字母转换为大写字母。程序的基本思路如下:1. 使用 `Scanner` 类从标准输入中读取一个字符串,存储在一个 `String` 类型的变量中。2. 将该字符串转换为字符数组,便于逐个访问每个字符并进行转换。...

编程题: 输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个...
{ \/\/输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。char ch;int char_num=0,kongge_num=0,int_num=0,other_num=0;while((ch=getchar())!='\\n')\/\/回车键结束输入,并且回车符不计入 { if(ch>='a'&&ch<='z'||ch<='z'&&ch>='a'){ char_num++;} else ...