C程序设计-----第2次作业
作业要求一 (15分)
完成下列编程题目,每次上完课都会增加2-3道题目,并将编程过程记录在博客里,一次PTA作业任选一道题目给出设计思路、流程图、源代码和错误记录,其他题目可只给出设计思路、源代码和错误记录。另外将每次PTA作业的提交列表贴在博客里,每次5分,共15分。
1)C高级第二次PTA作业(1)
void delnum(char *s)
{
short int j=;
for(short int i=;*(s+i)!='\0';i++)
if(*(s+i)<=''&&*(s+i)>='')
continue;
else
{
*(s+j)=*(s+i);
j++;
}
*(s+j)='\0';
}
#include<stdio.h>
int fun(char *str,char *substr);
int main()
{
char str[]="asdasasdfgasdaszx67asdmklo",substr[]="asd";
int n;
n=fun(str,substr);
printf("n=%d\n",n);
return ;
}
int fun(char *str,char *substr)
{
short int j=,count=;
for(short int i=;*(str+i)!='\0';i++)
{
for(j=;*(substr+j)!='\0';j++)
if(*(str+i)==*(substr+j))
i++;
else
break;
if(*(substr+j)=='\0')
count++;
}
return count;
}
#include <stdio.h>
int fun(char *s,int num);
int main()
{
char s[];
gets(s);
fun(s,);
printf("%s",s);
return ;
}
int fun(char *s,int num)
{
for(short int i=;i<num-;i++)
{
short int k=i,swap;
for(short int j=i+;j<num-;j++)
if(*(s+k)<*(s+j))
k=j;
swap=*(s+k);
*(s+k)=*(s+i);
*(s+i)=swap;
}
}
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
void main()
{
short int N;
scanf("%d\n",&N);
short int *grade=(int *)malloc(N*sizeof(short int));
if(grade!=NULL)
{
float max=-,min=,sum=;
for(short int i=;i<N;i++)
{
scanf("%d",grade+i);
if(max<*(grade+i))
max=*(grade+i);
if(min>*(grade+i))
min=*(grade+i);
sum+=*(grade+i);
}
printf("average = %.2f\nmax = %.2f\nmin = %.2f\n",sum/N,max,min);
free(grade);
}
system("pause");
}
2)C高级第二次PTA作业(2)
#include <stdio.h>
#include <stdlib.h>
struct Staffinformation
{
char name[];float basepay;
float fluctuatingwages;float expenses;
float actualwages;
};
void main()
{
signed short int N;
scanf("%d",&N);
struct Staffinformation s;
for(signed short int i=;i<N;i++)
{
scanf("%s %f %f %f\n",s.name,&s.basepay,&s.fluctuatingwages,&s.expenses);
s.actualwages=s.basepay+s.fluctuatingwages-s.expenses;
printf("%s %.2f\n",s.name,s.actualwages);
}
system("pause");
}
#include <stdio.h>
#include <stdlib.h>
struct student
{
char number[];char name[];
int grade;
};
void main()
{
int N,sum=;
scanf("%d",&N);
struct student infor[N];
for(signed short int i=;i<N;i++)
{
scanf("%s %s %d\n",infor[i].number,infor[i].name,&infor[i].grade);
sum+=infor[i].grade;
}
printf("%.2f\n",sum/N*1.0f);
for(signed short int i=;i<N;i++)
if(sum/N*1.0f>infor[i].grade)
printf("%s %s\n",infor[i].name,infor[i].number);
system("pause");
}
3)C高级第二次PTA作业(3)
#include <stdio.h>
#define MAXN 10
struct student
{
int num;char name[];
int score;char grade;
};
int set_grade( struct student *p, int n );
int main()
{
struct student stu[MAXN], *ptr;
int n, i, count;
ptr = stu;
scanf("%d\n", &n);
for(i = ; i < n; i++)
scanf("%d%s%d", &stu[i].num, stu[i].name, &stu[i].score);
count = set_grade(ptr, n);
printf("The count for failed (<60): %d\n", count);
printf("The grades:\n");
for(i = ; i < n; i++)
printf("%d %s %c\n", stu[i].num, stu[i].name, stu[i].grade);
return ;
}
int set_grade(struct student *p,int n)
{
short int count=;
for(signed short int i=;i<n;i++)
if((p+i)->score>=&&(p+i)->score<=)
(p+i)->grade='A';
else if((p+i)->score>=&&(p+i)->score<=)
(p+i)->grade='B';
else if((p+i)->score>=&&(p+i)->score<=)
(p+i)->grade='C';
else
{
(p+i)->grade='D';
count++;
}
return count;
}
#include <stdio.h>
struct student
{
int num;
char name[];
float score[];
float sum;
};
void calc(struct student *p,int n);
void sort(struct student *p,int n);
int main()
{
struct student stu[];
int i,j;
float f;
for(i=;i<;i++)
{
scanf("%d%s",&stu[i].num,stu[i].name);
for(j=;j<;j++)
{
scanf("%f",&f);
stu[i].score[j]=f;
}
}
calc(stu,);
sort(stu,);
for(i=;i<;i++)
{
printf("%5d%15s",stu[i].num,stu[i].name);
printf(" %.1f %.1f %.1f %.1f\n",stu[i].score[],stu[i].score[],stu[i].score[], stu[i].sum);
}
return ;
}
void calc(struct student *p,int n)
{
for(signed short int i=;i<n;i++)
{
(p+i)->sum=;
for(signed int j=;j<;j++)
(p+i)->sum+=(p+i)->score[j];
}
}
void sort(struct student *p,int n)
{
for(signed short int i=;i<n-;i++)
{
short int k=i;
for(signed short int j=i+;j<n;j++)
if((p+k)->sum<(p+j)->sum)
k=j;
struct student swap=p[k];
p[k]=p[i];
p[i]=swap;
}
}
要求三、学习总结和进度(15分)
1、总结两周里所学的知识点有哪些学会了?(可记录每道作业题目所用的知识点)哪些还没有学会?(5分)
2、将PTA作业的源代码使用git提交到托管平台上,要求给出上传成功截图和你的git地址。请注意git地址应是类似“https://git.coding.net/Dawnfox/wf4_2.git”这样的字符串且是可被访问者直接点击进行访问的链接。(3分)
3、点评3个同学的本周作业(在作业中给出被点评同学博客的链接),并邀请3名同学点评你的作业,无点评作业(你的作业未被3人点评)/或者没有回复同学或老师的点评都倒扣该题分数。(4分)
建议采用汉堡包的方式点评其他同学的作业,只有赞扬没有给出实质性建议或者指正的不算点评,不给分。
4、请用表格和折线图呈现你本周(3/26 8:00~4/9 8:00)的代码行数和所用时间、博客字数和所用时间(3分)
C程序设计-----第2次作业的更多相关文章
- C程序设计-----第0次作业
C程序设计-----第0次作业- 1.翻阅邹欣老师的关于师生关系博客,并回答下列问题,每个问题的答案不少于500字:(50分)- 1)最理想的师生关系是健身教练和学员的关系,在这种师生关系中你期望获得 ...
- C语言程序设计第六次作业——循环结构(2)
C语言程序设计第六次作业--循环结构(2) 之前的博客园图片没处理好,对大家说一声抱歉.希望大家能够多多指出我的错误,我来认真修改 ^ - ^ !. (1)改错题 序列求和:输入一个正实数eps,计算 ...
- 程序设计第三次作业---C++计算器雏形
Github链接:https://github.com/Wasdns/object-oriented 题目:程序设计第三次作业 程序设计第三次作业附加 我的程序设计第三次作业附加 代码规范 更新时间: ...
- Week09《java程序设计》第九次作业总结
Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. Li ...
- C语言程序设计第5堂作业
一.本次课学习主要内容及知识结构点: 二.实验内容:(60分) 1. 求奇数和.输入一批正整数(以零或负数为结束标志),求其中的奇数和.试编写相应程序. 2. 展开式求和.输入一个实数 x,计算并输出 ...
- C语言程序设计第4堂作业
大家注意:本次作业稍有增加,由于放假期间大家空闲时间比较充足,将之前学习过程中遗留的问题必须在假期解决. 本次课学习主要内容: 分支结构中的二分支结构.多分支结构和else-if语句 掌握字符型数 ...
- C语言程序设计第十一次作业
同学们,一晃一个学期就过去了,第一节课时,我曾做过一个调查,没有一个同学在中学阶段接触过程序设计,也就是说,那时,大家都是零基础,或许只是听说过"C语言"这个词,但其他便一无所知了 ...
- 程序设计第三次作业--C++计算器初始部分
面向对象程序设计作业3--C++计算器初始部分 Github 链接:https://github.com/luojingzhao/object-oriented/tree/master/calcula ...
- 2018上C语言程序设计(高级)作业- 第0次作业
准备工作(10分) 1.在博客园申请个人博客. 2.加入班级博客(2班班级博客链接地址)(1班班级博客链接地址) 3.关注邹欣老师博客.关注任课老师博客. 4.加入讨论小组,学习过程中遇到问题不要随意 ...
- 2018上C语言程序设计(高级)作业- 初步计划
C语言程序设计(高级)36学时,每周4学时,共9周.主要学习指针.结构和文件三部分内容.整个课程作业计划如下: PTA和博客的使用指南 若第一次使用PTA和博客,请务必先把PTA的使用简介和教师如何在 ...
随机推荐
- validform.js+layer.js 表单验证样式
$("#formAdd").Validform({ tiptype: function (msg, o, cssctl) { if (o.type == 3) {//失败 laye ...
- xshell过期了怎么办,是学生就用学生版吧
访问这里:https://www.netsarang.com/download/software.html 点击Free for Home & School 下载家庭版和学生版 来到这个页面了 ...
- 1linux的基本命令
查看命令的帮助信息man 命令名 文件操作touch 建立文件 (对于已存在文件,更新时间)cat 查看文件 (-n 自动加上行号)rm 删除文件cp 拷贝文件mv 移动/重命名文件more 分页查看 ...
- uva 1048 最短路的建图 (巧,精品)
大白书 P341这题说的是给了NT种飞机票,给了价钱和整个途径,给了nI条要旅游的路线.使用飞机票都必须从头第一站开始坐,可以再这个路径上的任何一点下飞机一但下飞机了就不能再上飞机,只能重新买票,对于 ...
- jmeter dubbo接口测试
说在前面,测试熔断降级系统时,要求测试一下对应的dubbo接口性能 1.安装Jmeter 2.将dubbo依赖包下载好放在jmeter路径/lib/ext下, 3.打开jmeter,测试计划下新建线程 ...
- C# static的用法详解
C# static的用法详解 有的东西你天天在用,但未必就代表你真正了解它,正如我之前所了解的 static . 一.静态类 静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 n ...
- springcloud10---feign-with-hystrix_factory
package com.itmuch.cloud; import org.springframework.boot.SpringApplication; import org.springframew ...
- Python3:爬取新浪、网易、今日头条、UC四大网站新闻标题及内容
Python3:爬取新浪.网易.今日头条.UC四大网站新闻标题及内容 以爬取相应网站的社会新闻内容为例: 一.新浪: 新浪网的新闻比较好爬取,我是用BeautifulSoup直接解析的,它并没有使用J ...
- 为pyhon安装opencv扩展包出现distributed 1.21.8 requires msgpack, which is not installed.【转】
本文转载自:https://blog.csdn.net/weixin_39513374/article/details/81051466 pip install msgpack-python pip ...
- 如何为openwrt生成补丁
答:使用quilt工具 步骤如下: 1. 配置quilt $cat> ~/.quiltrc <<EOF QUILT_DIFF_ARGS="--no-timestamps - ...