OJ题实验(10)(2)

2018-12-19 22:42

Time Limit: 1 Sec Memory Limit: 16 MB

Submit: 3275 Solved: 2124 [Submit][Status][Web Board]

Description

将输入的一个字符串s逆序输出。

----------------------------------------------------------------------------- 编写一个函数revs()把一个串在原地(原存储位置上)倒转顺序: 原型:char * revs(char * s);

功能:要逆序的字符串s作为参数传入,revs(s)函数调用后,s中存储的串为原串的逆序。 函数的调用格式见“Append Code”。

Input

输入为一个串s。输入最少为一个字符,最多不会超过100个字符。

Output

串s的逆序。

Sample Input

ABCDE

Sample Output

EDCBA

HINT

本题中,函数原型中的“char * s”可以认为等同于“char s[]”,而返回值的“char *”可以忽略,因为实际并没有用到,或者用“return s”实现即可。

Append Code

append.c,

1 int main() 2 { 3 char s[MAX_STR_LEN]; 4 gets(s); 5 revs(s); 6 puts(s); 7 return 0; 8 }

#include #include #define MAX_STR_LEN 101 char * revs(char * s) {

int i, j; char tmp;

j = strlen(s);

for(i = 0; i < j; i ++,j --) {

tmp = *(s+i);

*(s+i)= *(s+j-1); *(s+j-1) = tmp; }

return s; }

int main() {

char s[MAX_STR_LEN]; gets(s); revs(s); puts(s); return 0; }

1271Problem D: 编写函数:各位数字之和 (Append Code)

Time Limit: 1 Sec Memory Limit: 2 MB

Submit: 2519 Solved: 1333 [Submit][Status][Web Board]

Description

给定一个正整数,求它的各位数字之和,直到这个和只有一位数为止。 例如,给出整数1236,那么计算

1+2+3+6=12

因为12是一个两位数,所以继续求和

1+2=3

得到结果为:3。

----------------------------------------------------------------------------- 编写一个函数digit_sum()完成求和的功能: 原型:int digit_sum(int num);

功能:返回整数num的各个位数字之和。 函数的调用格式见“Append Code”。

Input

一个int类型的正整数N。

Output

N的各位数字之和,并不断求和,直到所求的和只有一位数字为止。

Sample Input

1236

Sample Output

3

HINT Append Code

append.c, append.cc,

1 int main() 2 { 3 int n; 4 scanf(\5 printf(\6 return 0; 7 }

1221Problem E: 打印字母菱形图案

Time Limit: 1 Sec Memory Limit: 16 MB

Submit: 1241 Solved: 780 [Submit][Status][Web Board]

Description

输出N(N为奇数)行由字母组成的菱形,第1行为字母A,第2行为BCD,第三行为CDEFG,以此类推。菱形上下对称。

Input

一个奇数N。0

Output

N行字母组成的菱形图案。

Sample Input

7

Sample Output

A BCD CDEFG DEFGHIJ CDEFG BCD A

#include int main() {

int n;

scanf(\ int i, j, k, m; m = (n + 1)/2; if(n == 1)

printf(\ else {

for(i = 0; i < m; i ++)

{for(j = 0; j < m-1-i; j ++) printf(\ for(k = i; k < i * 3 + 1; k ++) printf(\ printf(\

for(i = m-2; i >= 0; i --) {

for(j = m - i - 2; j >= 0; j --) printf(\ for(k = i; k < i*3+1; k ++) printf(\ if(i > 0) printf(\ } }return 0; }

1247Problem F: 规范序排列

Time Limit: 1 Sec Memory Limit: 16 MB

Submit: 1404 Solved: 845 [Submit][Status][Web Board]

Description

规范序是一种对字符串比较的排序规则,定义如下: 1 串长小的排在前面;

2 相同串长的按照字典序排列顺序。 串的字典序遵循如下递归定义:


OJ题实验(10)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2015年执业医师真题笔试综合含答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: