博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第8周作业
阅读量:6452 次
发布时间:2019-06-23

本文共 3826 字,大约阅读时间需要 12 分钟。

6-1 函数实现字符串逆序 (15 分)

本题要求实现一个字符串逆序的简单函数。

函数接口定义:

void f( char *p );

函数f对p指向的字符串进行逆序操作。要求函数f中不能定义任何数组,不能调用任何字符串处理函数。

裁判测试程序样例:

#include 
#define MAXS 20void f( char *p );void ReadString( char *s ); /* 由裁判实现,略去不表 */int main(){ char s[MAXS]; ReadString(s); f(s); printf("%s\n", s); return 0;}

/* 你的代码将被嵌在这里 */

输入样例:

Hello World!

输出样例:

!dlroW olleH

2.我的代码

void f( char *p ){    int i=0,q=0,h,tmp;    while(p[i]!='\0')        i++;        h=i-1;    while(q<=h)    {        tmp=p[q];        p[q]=p[h];        p[h]=tmp;        q++;        h--;    }    return ;}

3.运行截图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419181711042-38774296.png)

4.流程图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419181955891-1159926474.png)

6-3 字符串的连接 (15 分)

本题要求实现一个函数,将两个字符串连接起来。

函数接口定义:

char *str_cat( char *s, char *t );

函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址。

裁判测试程序样例:

#include 
#include
#define MAXS 10char *str_cat( char *s, char *t );int main(){ char *p; char str1[MAXS+MAXS] = {'\0'}, str2[MAXS] = {'\0'}; scanf("%s%s", str1, str2); p = str_cat(str1, str2); printf("%s\n%s\n", p, str1); return 0;}

/* 你的代码将被嵌在这里 */

输入样例:

abcdef

输出样例:

abcdefabcdef

1.我的代码

char *str_cat(char *s, char *t){    int len;    int i;    len = strlen(s);    for (i = 0; *(t + i) != '\0'; i++)    {        *(s + i + len) = *(t + i);    }     return s;}

2.运行结果截图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419182122997-598016720.png)

3.流程图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419182343479-530616861.png)

7-1 输出学生成绩 (20 分)

本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。

输入格式:

输入第一行首先给出一个正整数N,表示学生的个数。接下来一行给出N个学生的成绩,数字间以空格分隔。

输出格式:

按照以下格式输出:average = 平均成绩max = 最高成绩min = 最低成绩结果均保留两位小数。

输入样例:

385 90 95

输出样例:

average = 90.00max = 95.00min = 85.00

1.我的代码

#include 
#include
int main (void){ int n,i,*p; double m,t,f; scanf("%d",&n); if((p=(int *)calloc(n,sizeof(int)))==NULL) { printf("Not able to allocate memory.\n"); exit(1); } for(i=0;i
*(p+i)) { f=*(p+i); } } printf("max = %.2f\nmin = %.2f",t,f); free (p); return 0;}

2.运行结果截图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419182533150-1139469994.png)

3.流程图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419182834882-54327742.png)

7-4 字符串排序 (20 分)

本题要求编写程序,读入5个字符串,按由小到大的顺序输出。

输入格式:

输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。

输出格式:

按照以下格式输出排序后的结果:After sorted:每行一个字符串输入样例:red yellow blue green white输出样例:After sorted:bluegreenredwhiteyellow

作者: 张泳

单位: 浙江大学城市学院
时间限制: 400 ms
内存限制: 64 MB

1.我的代码

#include
#include
#include
using namespace std;int main(){ string s[5]; string T; int i,j=0; for(i=0;i<5;i++) { cin>>s[i]; } for(i=0;i<5;i++) { for(j=i+1;j<5;j++) { if(strcmp(s[i].c_str(),s[j].c_str())>0) { T=s[i]; s[i]=s[j]; s[j]=T; } } } cout<<"After sorted:"<

2.运行结果截图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419183137345-426075505.png)

3.流程图

![](https://img2018.cnblogs.com/blog/1581764/201904/1581764-20190419183514159-1200145829.png)

7-3 计算平均成绩 (15 分)

给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和成绩([0,100]区间内的整数),要求计算他们的平均成绩,并顺序输出平均线以下的学生名单。

输入格式:

输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩”,中间以空格分隔。

输出格式:

首先在一行中输出平均成绩,保留2位小数。然后按照输入顺序,每行输出一位平均线以下的学生的姓名和学号,间隔一个空格。

输入样例:

500001 zhang 7000002 wang 8000003 qian 9010001 li 10021987 chen 60

输出样例:

80.00zhang 00001chen 21987

1.运行结果截图

1581764-20190419183624012-320513129.png

由于此预习题太难,只能到这了

本周学习总结

1581764-20190419183915975-1349515713.png

转载于:https://www.cnblogs.com/xyh9977/p/10738101.html

你可能感兴趣的文章
IEnumerable<T>
查看>>
IntelliJ IDEA 注册码
查看>>
linux 上面配置apache2的虚拟目录
查看>>
Linux学习总结 (未完待续...)
查看>>
NoSQL数据库探讨 - 为什么要用非关系数据库?
查看>>
String字符串的截取
查看>>
switch函数——Gevent源码分析
查看>>
Spring MVC简单原理
查看>>
DynamoDB Local for Desktop Development
查看>>
ANDROID的SENSOR相关信息
查看>>
laravel 使用QQ邮箱发送邮件
查看>>
用javascript验证哥德巴赫猜想
查看>>
Shell编程-环境变量配置文件
查看>>
thymeleaf 中文乱码问题
查看>>
(转)CSS浮动(float,clear)通俗讲解
查看>>
os.walk函数
查看>>
[Unity3d]DrawCall优化手记
查看>>
细数.NET 中那些ORM框架 —— 谈谈这些天的收获之一
查看>>
SQL Serever学习7——数据表2
查看>>
洛谷——P2404 自然数的拆分问题
查看>>