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的使用简介和教师如何在 ... 
随机推荐
- 2016ACM/ICPC亚洲区沈阳站 Solution
			A - Thickest Burger 水. #include <bits/stdc++.h> using namespace std; int t; int a, b; int main ... 
- PHP开发之thinkPHP分层设计
			thinkphp模型层Model.Logic.Service讲解 ThinkPHP支持模型的分层 ,除了Model层之外,我们可以项目的需要设计和创建其他的模型层. 通常情况下,不同的分 ... 
- 20145122 《Java程序设计》第二周学习总结
			20145122 <Java程序设计>第2周学习总结 教材学习内容总结 在大一的时候我们学习了C语言,所以对第三章的知识不是很陌生,但有些新知识需要记忆. java常用的数据类型: byt ... 
- ZLYD团队第5周项目总结
			ZLYD团队第5周项目总结 项目进展 目前游戏人没有成功运行.初步判断是部分代码有误. 我们采用了两种运行方式,代码未出现明确错误.但问题可能是由于版本问题. 将Wall.java.Gold.java ... 
- jQuery Mobile中的页面加载与跳转机制
			第一次做用jQuery Mobile做东西,发现一些跟平时的思维习惯不太一样的.其中这个框架的页面加载机制便是其中一个.如果不明白其中的奥秘,往往会出现一些让人摸不着头脑的怪现象,比如页面进入后点击按 ... 
- 定义 S4 泛型函数
			在前面的例子中,我们可以看出 S4 比 S3 更正式,因为 S4 类有类的正式定义.同样, S4 的泛型函数也更加正式.在一个关于形状的例子中,我们定义了一系列具有继承关系的 S4 类,只是继承关系的 ... 
- HashMap put方法
			HashMap的put方法执行过程可以通过下图来理解,自己有兴趣可以去对比源码更清楚地研究学习. ①.判断键值对数组table[i]是否为空或为null,否则执行resize()进行扩容: ②.根据键 ... 
- JavaScript权威指南--正则表达式
			知识要点 正则表达式,是一个描述字符模式的对象.javascript的RegExp类表示正则表达式,String和RegExp都定义了方法,后者使用正则表达式进行强大的模式匹配和文本检索与替换功能. ... 
- H5 canvas建造敌人坦克
			接着上一篇(http://www.cnblogs.com/zhouhuan/p/H5_tankgame3.html),这一篇建造敌人的坦克. 思路是,基于可扩展性和性能等方面的考虑,用构造函数改造 ... 
- Spring MVC文件上传教程 commons-io/commons-uploadfile
			Spring MVC文件上传教程 commons-io/commons-uploadfile 用到的依赖jar包: commons-fileupload 1.3.1 commons-io 2.4 基于 ... 
