期末复习4---PTA之前题目复习

2024-06-11 18:04
文章标签 题目 复习 期末 之前 pta

本文主要是介绍期末复习4---PTA之前题目复习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

怎么在不能用strlen也就四没有string.h头文件的时候实现统计字符串的长度?

字符串的逆序(看收藏里面的题)

#include <stdio.h>
void f(char *p);int main()
{char s[1000];gets(s);f(s);printf("%s",s);return 0;
}void f(char *p)
{int i=0;int q,k=0;while(p[i]!='\0'){i++;}while(k<i){q=p[k];p[k]=p[i-1];p[i-1]=q;k++;i--;}
}

输入输出函数实现

void InputArr( struct student arr[], int n, int m )
{int i;for(i=0;i<n;i++){scanf("%ld %s",&arr[i].id,arr[i].name);for(int j=0;j<m;j++){scanf("%d",&arr[i].score[j]);}}
}void OutputArr( struct student arr[], int n, int m )
{double average;for(int i=0;i<n;i++){average=(double)(arr[i].score[0]+arr[i].score[1]+arr[i].score[2])/m;printf("%8ld%8s%4d%4d%4d%6.1f\n",arr[i].id,arr[i].name,arr[i].score[0],arr[i].score[1],arr[i].score[2],average);}
}

找出总分最高的同学信息

存在的问题:sum,average,max这些变量到底在什么时候去定义,定义完后分别该怎么用?

 有一个最简单的办法,就是代码写的长,但是不用担心这样的问题

#include <stdio.h>
struct student{char num[6];char name[11];int a,b,c;
};
int main()
{int n;scanf("%d",&n);struct student stu[n];int i;for(i=0;i<n;i++){scanf("%s%s%d%d%d",stu[i].num,stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);}int max=0;for(i=1;i<n;i++){if(stu[i].a+stu[i].b+stu[i].c>stu[max].a+stu[max].b+stu[max].c)max=i;}printf("%s %s %d",stu[max].name,stu[max].num,stu[max].a+stu[max].b+stu[max].c);return 0;
}

经过修改实验

sum最好定义到结构体里面,后面才可以用stu[i].sum

max最好直接int max=0;

下面的循环从1开始

更改以后的简便一点的 

 相应代码:

#include <stdio.h>
struct student{char num[6];char name[11];int a,b,c;int sum;
};
int main()
{int n;scanf("%d",&n);struct student stu[n];int i;for(i=0;i<n;i++){scanf("%s%s%d%d%d",stu[i].num,stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);}int max=0;for(i=1;i<n;i++){stu[i].sum=stu[i].a+stu[i].b+stu[i].c;if(stu[i].sum>stu[max].sum)max=i;}printf("%s %s %d",stu[max].name,stu[max].num,stu[max].sum);return 0;
}

从大到小或者从小到大排序----冒泡排序---双重循环i,j

#include<stdio.h>
#include<string.h>struct student{char name[10];int birth;char tale[21];}stu[10],stu1;int main() {int i,j,n;scanf("%d",&n);for(i=0;i<n;i++){scanf("%s %d %s",stu[i].name,&stu[i].birth,stu[i].tale);}for( i=0;i<n-1;i++){for( j=0;j<n-i-1;j++){if(stu[j].birth>stu[j+1].birth){stu1=stu[j];stu[j]=stu[j+1];stu[j+1]=stu1;}}}for(i=0;i<n;i++){printf("%s %d %s\n",stu[i].name,stu[i].birth,stu[i].tale);}return 0;}

我写的时候有一个错误,下次要避免

 

这篇关于期末复习4---PTA之前题目复习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1051898

相关文章

PTA求一批整数中出现最多的个位数字

作者 徐镜春 单位 浙江大学 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n

题目1254:N皇后问题

题目1254:N皇后问题 时间限制:1 秒 内存限制:128 兆 特殊判题:否 题目描述: N皇后问题,即在N*N的方格棋盘内放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在同一斜线上。因为皇后可以直走,横走和斜走如下图)。 你的任务是,对于给定的N,求出有多少种合法的放置方法。输出N皇后问题所有不同的摆放情况个数。 输入

题目1380:lucky number

题目1380:lucky number 时间限制:3 秒 内存限制:3 兆 特殊判题:否 提交:2839 解决:300 题目描述: 每个人有自己的lucky number,小A也一样。不过他的lucky number定义不一样。他认为一个序列中某些数出现的次数为n的话,都是他的lucky number。但是,现在这个序列很大,他无法快速找到所有lucky number。既然

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

码蹄集部分题目(2024OJ赛9.4-9.8;线段树+树状数组)

1🐋🐋配对最小值(王者;树状数组) 时间限制:1秒 占用内存:64M 🐟题目思路 MT3065 配对最小值_哔哩哔哩_bilibili 🐟代码 #include<bits/stdc++.h> using namespace std;const int N=1e5+7;int a[N],b[N],c[N],n,q;struct QUERY{int l,r,id;}que

day45-测试平台搭建之前端vue学习-基础4

目录 一、生命周期         1.1.概念         1.2.常用的生命周期钩子         1.3.关于销毁Vue实例         1.4.原理​编辑         1.5.代码 二、非单文件组件         2.1.组件         2.2.使用组件的三大步骤         2.3.注意点         2.4.关于VueComponen

2024 年高教社杯全国大学生数学建模竞赛题目——2024 年高教社杯全国大学生数学建模竞赛题目的求解

2024 年高教社杯全国大学生数学建模竞赛题目 (请先阅读“ 全国大学生数学建模竞赛论文格式规范 ”) 2024 年高教社杯全国大学生数学建模竞赛题目 随着城市化进程的加快、机动车的快速普及, 以及人们活动范围的不断扩大,城市道 路交通拥堵问题日渐严重,即使在一些非中心城市,道路交通拥堵问题也成为影响地方经 济发展和百姓幸福感的一个“痛点”,是相关部门的棘手难题之一。 考虑一个拥有知名景区

力扣 739. 每日温度【经典单调栈题目】

1. 题目 理解题意: 1.1. 给一个温度集合, 要返回一个对应长度的结果集合, 这个结果集合里面的元素 i 是 当前 i 位置的元素的下一个更高温度的元素的位置和当前 i 位置的距离之差, 若是当前元素不存在下一个更高温度的元素, 则这个位置用0代替; 2. 思路 本题用单调栈来求解;单调栈就适用于来求当前元素左边或者右边第一个比当前元素大或者小的元素;【单调栈:让栈中的元素保持单调

msyql执行效率的问题以及常见基础面试题目

SQL被称为结构化查询语言(Structured Query Language )是操作和检索关系型数据库的标准语言 SQL语言包括三种主要程序设计语言类别的语句:数据定义语言(DDL),数据操作语言(DML)及数据控制语言(DCL)。 ※ 数据定义语言(DDL),例如:CREATE、DROP、ALTER等语句。    Data Definition Language ※ 数据

计算机基础知识复习9.6

点对点链路:两个相邻节点通过一个链路相连,没有第三者 应用:PPP协议,常用于广域网 广播式链路:所有主机共享通信介质 应用:早期的总线以太网,无线局域网,常用于局域网 典型拓扑结构:总线型 星型(逻辑总线型) 介质访问控制  静态划分信道 信道划分介质访问控制 频分多路复用FDM 时分多路复用TDM 波分多路复用WDM 码分多路复用CDM 动态分配信道 轮询访问介质访问控