c++编程的四道题目
1、译密码。为使电文保密,往往按照一定规律将电文转换成密码,收报人再按照约定的规律将其译回原文。例如,可以按以下规律将电文变成密码:将字母A变成E,a变成e,即变成其后的...
1、 译密码。为使电文保密,往往按照一定规律将电文转换成密码,收报人再按照约定的规律将其译回原文。例如,可以按以下规律将电文变成密码:将字母A变成E,a变成e,即变成其后的第4个字母,W变成A,X变成B,Y变成C,Z变成D,见下图。字母按上述规律转换,非字母字符不变。如〃Wonderful!〃转换为〃Asrhivjyp!〃。输入一行字符,要求输出其相应的密码。
2、 求方程ax2 +bx+c=0的根,分别求当b2-4ac大于0、等于0和小于0时的根,并输出结果。a,b,c的值从键盘输入。
3、 求a!+b!+c!的值,用一个函数fac(n)求n!。a,b,c的值由主函数输入,最终得到的值在主函数中输出。
4、 有一字符串,包含n个字符。写一函数copystr(),将此字符串中从第m个字符开始的全部字符复制成为另外一个字符串。部分程序如下: #include using namespace std; int main() {void copystr(char *,char *,int); int m; char str1[20],str2[20]; cout<<"input string:"; gets(str1); cout<<"which character do you want begin to copy?"; cin>>m; if (strlen(str1) 展开
2、 求方程ax2 +bx+c=0的根,分别求当b2-4ac大于0、等于0和小于0时的根,并输出结果。a,b,c的值从键盘输入。
3、 求a!+b!+c!的值,用一个函数fac(n)求n!。a,b,c的值由主函数输入,最终得到的值在主函数中输出。
4、 有一字符串,包含n个字符。写一函数copystr(),将此字符串中从第m个字符开始的全部字符复制成为另外一个字符串。部分程序如下: #include using namespace std; int main() {void copystr(char *,char *,int); int m; char str1[20],str2[20]; cout<<"input string:"; gets(str1); cout<<"which character do you want begin to copy?"; cin>>m; if (strlen(str1) 展开
展开全部
1:
#include "stdio.h"
void encrypt(char ch[],char chp[])
{
for(int i=0;ch[i]>0;i++)
{
if(ch[i]>='A'&ch[i]<='Z')
chp[i]='A'+(ch[i]-'A'+4)%26;
else if(ch[i]>='a'&ch[i]<='z')
chp[i]='a'+(ch[i]-'a'+4)%26;
else
chp[i]=ch[i];
}
}
void decode(char chp[],char ch[])
{
for(int i=0;chp[i]>0;i++)
{
if(chp[i]>='A'&chp[i]<='Z')
ch[i]='A'+(chp[i]-'A'+22)%26;
else if(chp[i]>='a'&chp[i]<='z')
ch[i]='a'+(chp[i]-'a'+22)%26;
else
ch[i]=chp[i];
}
}
void initialize(char ch[],char chp[],int n ,int m)
{
for(int i=0;i<n;i++)
ch[i]=-1;
for(int i=0;i<m;i++)
chp[i]=-1;
}
void main()
{
int m=1;
while(m)
{
char ch[100],chp[100];
char sel;
initialize(ch,chp,100,100);
printf("选择加密或解密:1 加密,2 解密,Other Key for 退出\n");
scanf("%c",&sel);
if(sel=='1')
{
printf("加密程序,输入原文:");
scanf("%s",ch);
encrypt(ch,chp);
printf("生成的密文:");
for(int i=0;chp[i]>0;i++)
printf("%c",chp[i]);
printf("\n");
getchar();
}
else if(sel=='2')
{
printf("解密程序,输入密文:");
scanf("%s",chp);
decode(chp,ch);
printf("生成的原文:");
for(int i=0;ch[i]>0;i++)
printf("%c",ch[i]);
printf("\n");
getchar();
}
else
m=0;
}
}
#include "stdio.h"
void encrypt(char ch[],char chp[])
{
for(int i=0;ch[i]>0;i++)
{
if(ch[i]>='A'&ch[i]<='Z')
chp[i]='A'+(ch[i]-'A'+4)%26;
else if(ch[i]>='a'&ch[i]<='z')
chp[i]='a'+(ch[i]-'a'+4)%26;
else
chp[i]=ch[i];
}
}
void decode(char chp[],char ch[])
{
for(int i=0;chp[i]>0;i++)
{
if(chp[i]>='A'&chp[i]<='Z')
ch[i]='A'+(chp[i]-'A'+22)%26;
else if(chp[i]>='a'&chp[i]<='z')
ch[i]='a'+(chp[i]-'a'+22)%26;
else
ch[i]=chp[i];
}
}
void initialize(char ch[],char chp[],int n ,int m)
{
for(int i=0;i<n;i++)
ch[i]=-1;
for(int i=0;i<m;i++)
chp[i]=-1;
}
void main()
{
int m=1;
while(m)
{
char ch[100],chp[100];
char sel;
initialize(ch,chp,100,100);
printf("选择加密或解密:1 加密,2 解密,Other Key for 退出\n");
scanf("%c",&sel);
if(sel=='1')
{
printf("加密程序,输入原文:");
scanf("%s",ch);
encrypt(ch,chp);
printf("生成的密文:");
for(int i=0;chp[i]>0;i++)
printf("%c",chp[i]);
printf("\n");
getchar();
}
else if(sel=='2')
{
printf("解密程序,输入密文:");
scanf("%s",chp);
decode(chp,ch);
printf("生成的原文:");
for(int i=0;ch[i]>0;i++)
printf("%c",ch[i]);
printf("\n");
getchar();
}
else
m=0;
}
}
展开全部
# include<iostream.h>
# include<string.h>
void main()
{
char s[5],snew[5];
int i;
cout<<"Please input the string:"<<endl;
for( i=0;i<5;i++)
{
cin>>s[i];
}
for( i=0;i<5;i++)
{
snew[i]=s[i]-32;
}
cout<<"The jiami hou de string:"<<endl;
for( i=0;i<5;i++)
{
cout<<snew[i];
}
}
//一元二次方程的解
# include<iostream.h>
# include<math.h>
void main(void)
{
float temp,s;
float a,b,c;
cout<<"please input a b c:"<<endl;
cin>>a>>b>>c;
temp=b*b-4*a*c;
if(temp>=0)
s=sqrt(temp);
else
cout<<"The question doesnot have a real answer!"<<endl;
float x1=(-b+s)/2*a;
float x2=(-b-s)/2*a;
cout<<"x1="<<x1<<endl;
cout<<"x2="<<x2<<endl;
}
//运用函数求解阶乘
#include<iostream.h>
int fac(int n)
{
int sum=1;
for(int i=1;i<=n;i++)
{
sum*=i;
}
return sum;
}
void main(void)
{
int a,b,c,s;
cout<<"Please input the a b c:"<<endl;
cin>>a>>b>>c;
s=fac(a)+fac(b)+fac(c);
cout<<"the result is :";
cout<<"s="<<s<<endl;
}
给你随便写了三个!
# include<string.h>
void main()
{
char s[5],snew[5];
int i;
cout<<"Please input the string:"<<endl;
for( i=0;i<5;i++)
{
cin>>s[i];
}
for( i=0;i<5;i++)
{
snew[i]=s[i]-32;
}
cout<<"The jiami hou de string:"<<endl;
for( i=0;i<5;i++)
{
cout<<snew[i];
}
}
//一元二次方程的解
# include<iostream.h>
# include<math.h>
void main(void)
{
float temp,s;
float a,b,c;
cout<<"please input a b c:"<<endl;
cin>>a>>b>>c;
temp=b*b-4*a*c;
if(temp>=0)
s=sqrt(temp);
else
cout<<"The question doesnot have a real answer!"<<endl;
float x1=(-b+s)/2*a;
float x2=(-b-s)/2*a;
cout<<"x1="<<x1<<endl;
cout<<"x2="<<x2<<endl;
}
//运用函数求解阶乘
#include<iostream.h>
int fac(int n)
{
int sum=1;
for(int i=1;i<=n;i++)
{
sum*=i;
}
return sum;
}
void main(void)
{
int a,b,c,s;
cout<<"Please input the a b c:"<<endl;
cin>>a>>b>>c;
s=fac(a)+fac(b)+fac(c);
cout<<"the result is :";
cout<<"s="<<s<<endl;
}
给你随便写了三个!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询