求帮助C语言作业,第四题一点思路都没有
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/17 04:56:42
求帮助C语言作业,第四题一点思路都没有
每题50金币,会追加
题目1
字符串简单加密
将输入的字符串(只含大小写拉丁字母)加密并输出。加密方法为将每个字母(区分大小写)做如下转换:A -> F, B -> G, C -> H, ……,Z -> E, a -> f, b -> g, c -> h, ……, z -> e。
提 示
要找各个字符的ASCII编码规律。
输 入输 出
输入:一个长度在512字节以内的字符串。
输出:加密后的字符串。
题目2
数字排列
用1,2,……,9组成三个三位数,abc,def和ghi,要求每个数字恰好使用一次,且abc:def:ghi = 1:2:3。输出所有解。
提 示
不必太动脑筋。
输 入输 出
输入:无
输出:按“数字+空格+数字+空格+数字”这样的格式,一行输出一个解。
题目3
NxN表格
根据输入的数字N(小于等于32的自然数),打印一个NxN的表格。在字符终端界面下,我们可以用‘_’和‘|’这两种字符来“画线”。
提 示
无。
输 入输 出
输入:一个自然数N(小于等于32)。
输出:NxN表格。
题目4
带口令的字符串加密(此题10分)
将输入的字符串(只含大小写拉丁字母)加密并输出。加密方法为,根据读入的口令(长度为m的字符串),将待加密字符串中的每个字母(区分大小写)分别作相应的转换。转换规则为:例如字母F是口令中的第i个字母,那么对于字符串中偏移量模除m余数为i的字母,转换规则为:A -> F, B -> G, C -> H, ……,Z -> E, a -> f, b -> g, c -> h, ……, z -> e。
要 求
口令以命令行参数的形式读入。口令字符串的长度范围是[2,16]。
输 入输 出
输入:一个长度在512字节以内的字符串。
输出:加密后的字符串。
每题50金币,会追加
题目1
字符串简单加密
将输入的字符串(只含大小写拉丁字母)加密并输出。加密方法为将每个字母(区分大小写)做如下转换:A -> F, B -> G, C -> H, ……,Z -> E, a -> f, b -> g, c -> h, ……, z -> e。
提 示
要找各个字符的ASCII编码规律。
输 入输 出
输入:一个长度在512字节以内的字符串。
输出:加密后的字符串。
题目2
数字排列
用1,2,……,9组成三个三位数,abc,def和ghi,要求每个数字恰好使用一次,且abc:def:ghi = 1:2:3。输出所有解。
提 示
不必太动脑筋。
输 入输 出
输入:无
输出:按“数字+空格+数字+空格+数字”这样的格式,一行输出一个解。
题目3
NxN表格
根据输入的数字N(小于等于32的自然数),打印一个NxN的表格。在字符终端界面下,我们可以用‘_’和‘|’这两种字符来“画线”。
提 示
无。
输 入输 出
输入:一个自然数N(小于等于32)。
输出:NxN表格。
题目4
带口令的字符串加密(此题10分)
将输入的字符串(只含大小写拉丁字母)加密并输出。加密方法为,根据读入的口令(长度为m的字符串),将待加密字符串中的每个字母(区分大小写)分别作相应的转换。转换规则为:例如字母F是口令中的第i个字母,那么对于字符串中偏移量模除m余数为i的字母,转换规则为:A -> F, B -> G, C -> H, ……,Z -> E, a -> f, b -> g, c -> h, ……, z -> e。
要 求
口令以命令行参数的形式读入。口令字符串的长度范围是[2,16]。
输 入输 出
输入:一个长度在512字节以内的字符串。
输出:加密后的字符串。
1.//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
#include "string.h"
int main(void){
char str[513];
int i,ln;
printf("Input a string(only letter)...\nstr=");
scanf("%s",str);
for(ln=strlen(str),i=0;i<ln;i++)
if(str[i]>='A'&& str[i]<='Z' && (str[i]+=5)>'Z' || str[i]>='a'&& str[i]<='z' && (str[i]+=5)>'z')
str[i]-=26;
printf("The encrypted string is:\n%s\n",str);
return 0;
}2.3.这题不知道是不是这意思?//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
int main(void){
int n,i,j;
printf("Input n(int 1<=n<=32)...\nn=");
scanf("%d",&n);
for(i=0;i<n;i++){
for(j=0;j<n;printf("%s","------"),j++);
printf("-\n|");
for(j=0;j<n-1;printf("%s"," |"),j++);
printf(" |\n");
}
for(j=0;j<n;printf("%s","------"),j++);
printf("\n");
return 0;
} 4.不好意思。第4题到现在也没有理解。第2题有点不可能的感觉:每个数字仅用一次,必须用一次,那么1和2肯定都有;可是1的2倍就是2,不是与2重复了?无论这两个数怎么分布,这个关系总是存在啊!还提示别太用脑筋……哈哈……
#include "stdio.h"
#include "string.h"
int main(void){
char str[513];
int i,ln;
printf("Input a string(only letter)...\nstr=");
scanf("%s",str);
for(ln=strlen(str),i=0;i<ln;i++)
if(str[i]>='A'&& str[i]<='Z' && (str[i]+=5)>'Z' || str[i]>='a'&& str[i]<='z' && (str[i]+=5)>'z')
str[i]-=26;
printf("The encrypted string is:\n%s\n",str);
return 0;
}2.3.这题不知道是不是这意思?//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
int main(void){
int n,i,j;
printf("Input n(int 1<=n<=32)...\nn=");
scanf("%d",&n);
for(i=0;i<n;i++){
for(j=0;j<n;printf("%s","------"),j++);
printf("-\n|");
for(j=0;j<n-1;printf("%s"," |"),j++);
printf(" |\n");
}
for(j=0;j<n;printf("%s","------"),j++);
printf("\n");
return 0;
} 4.不好意思。第4题到现在也没有理解。第2题有点不可能的感觉:每个数字仅用一次,必须用一次,那么1和2肯定都有;可是1的2倍就是2,不是与2重复了?无论这两个数怎么分布,这个关系总是存在啊!还提示别太用脑筋……哈哈……