自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 数组名和指针的区别

在学习指针时,我们通常把函数参数的数组名当做指针类型理解,但实际上数组名同指针也有区别,要理解为特殊的指针正常的指针类型,会开辟四个空间大小,如下#include<stdio.h>#include<stdlib.h>int main(){ //int b[20]; int *b=(int *)malloc(sizeof(int)); printf("%x\n",b); printf("%x\n",&b); return 0;}执行结果如下:但是如果是

2021-12-11 21:16:03 627

原创 实验8-2-2 找最长的字符串 (15 分)(链表法)

实验8-2-2 找最长的字符串 (15 分)本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。输入格式:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。输出格式:在一行中用以下格式输出最长的字符串:The longest is: 最长的字符串如果字符串的长度相同,则输出先输入的字符串。输入样例:5liwangzhangjinxiang结尾无空行输出样例:The longest is: zhang#inc

2021-12-02 21:36:20 597 2

原创 实验9-7 找出总分最高的学生 (15 分)

实验9-7 找出总分最高的学生 (15 分)给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩([0,100]区间内的整数),要求输出总分最高学生的姓名、学号和总分。输入格式:输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。输出格式:在一行中输出总分最高学生的姓名、学号和总分,间隔一个空格。题目保证这样的学生是唯一的。输入样例:5000

2021-12-01 20:59:31 1187

原创 实验8-2-8 字符串排序 (20 分)(指针数组,惊天大坑,一定注意)

实验8-2-8 字符串排序 (20 分)本题要求编写程序,读入5个字符串,按由小到大的顺序输出。输入格式:输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。输出格式:按照以下格式输出排序后的结果:After sorted:每行一个字符串输入样例:red yellow blue black white结尾无空行输出样例:After sorted:blackblueredwhiteyellow#include<stdio.h

2021-11-29 21:52:23 354

原创 实验8-1-9 输出学生成绩 (20 分)(头指针类型,不带头结点)

实验8-1-9 输出学生成绩 (20 分)本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。输入格式:输入第一行首先给出一个正整数N,表示学生的个数。接下来一行给出N个学生的成绩,数字间以空格分隔。输出格式:按照以下格式输出:average = 平均成绩max = 最高成绩min = 最低成绩结果均保留两位小数。输入样例:385 90 95结尾无空行输出样例:average = 90.00max = 95.00m

2021-11-29 20:11:38 587

原创 实验9-5 查找书籍 (20 分)

实验9-5 查找书籍 (20 分)给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价。输入格式:输入第一行给出正整数n(<10),随后给出n本书的信息。每本书在一行中给出书名,即长度不超过30的字符串,随后一行中给出正实数价格。题目保证没有同样价格的书。输出格式:在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。输入样例:3Programming in C21.5Programming in VB18.5Prog

2021-11-29 20:00:11 167

原创 实验7-3-9 删除重复字符(简单算法易于理解,无需for循环依次前移)

实验7-3-9 删除重复字符 (20 分)本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。输入格式:输入是一个以回车结束的非空字符串(少于80个字符)。输出格式:输出去重排序后的结果字符串。输入样例:ad2f3adjfeainzzzv结尾无空行输出样例:23adefijnvz#include<stdio.h>#include<string.h>void sort(char *a){//选择排序 int le

2021-11-28 22:27:15 692

原创 实验2-5-3 求平方根序列前N项和 (15 分)

实验2-5-3 求平方根序列前N项和 (15 分)本题要求编写程序,计算平方根序列1​+2​+3​+⋯的前N项之和。可包含头文件math.h,并调用sqrt函数求平方根。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后两位。题目保证计算结果不超过双精度范围。输入样例:10结尾无空行输出样例:sum = 22.47#include<stdio.h>#include<math.h>int

2021-11-28 21:47:27 862

原创 实验4-1-7 特殊a串数列求和 (20 分)

实验4-1-7 特殊a串数列求和 (20 分)给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。输入格式:输入在一行中给出不超过9的正整数a和n。输出格式:在一行中按照“s = 对应的和”的格式输出。输入样例:2 3结尾无空行输出样例:s = 246#include<stdio.h>int fun(int a,int b){ int n=a; while(b){ a=a*10+n;

2021-11-28 21:42:33 591

原创 实验4-1-5 统计素数并求和 (20 分)

实验4-1-5 统计素数并求和 (20 分)本题要求统计给定整数M和N区间内素数的个数并对它们求和。输入格式:输入在一行中给出两个正整数M和N(1≤M≤N≤500)。输出格式:在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。输入样例:10 31结尾无空行输出样例:7 143#include<stdio.h>#include<math.h>int isprime(int n){ if(n==1)//注意1不是素数

2021-11-28 21:34:19 1864

原创 实验8-1-8 报数 (20 分)

实验8-1-8 报数 (20 分)报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<n)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。本题要求编写函数,给出每个人的退出顺序编号。函数接口定义:void CountOff( int n, int m, int out[] );其中n是初始人数;m是游戏规定的退出位次(保证为小于n的正整数)。函数CountOff将每个人的退出顺序编号存在数组out[]中。因为C语言数组

2021-11-28 21:24:58 671

转载 实验2-5-4 求组合数 (15 分)

实验2-5-4 求组合数 (15 分)本题要求编写程序,根据公式Cnm​=m!(n−m)!n!​算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。输入格式:输入在一行中给出两个正整数m和n(m≤n),以空格分隔。输出格式:按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。输入样例:2 7结尾无空行输出样例:result = 21#include<std

2021-11-28 21:17:22 874

原创 实验4-1-10 兔子繁衍问题 (15 分)递归思想

实验4-1-10 兔子繁衍问题 (15 分)一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?输入格式:输入在一行中给出一个不超过10000的正整数N。输出格式:在一行中输出兔子总数达到N最少需要的月数。输入样例:30结尾无空行输出样例:9int f(int n){ if(n==1||n==2)//如果前两个月没有新增 return

2021-11-28 21:11:47 159

原创 实验8-2-9 长整数转化成16进制字符串 (15 分)

实验8-2-9 长整数转化成16进制字符串 (15 分)本题要求实现一个将长整数转化成16进制字符串的简单函数。函数接口定义:void f( long int x, char *p );其中x是待转化的十进制长整数,p指向某个字符数组的首元素。函数f的功能是把转换所得的16进制字符串写入p所指向的数组。16进制的A~F为大写字母。裁判测试程序样例:#include <stdio.h>#define MAXN 10void f( long int x, char *p );int

2021-11-27 21:42:41 1302

原创 实验5-10 使用函数统计指定数字的个数 (15 分)

实验5-10 使用函数统计指定数字的个数 (15 分)本题要求实现一个统计整数中指定数字的个数的简单函数。函数接口定义:int CountDigit( int number, int digit );其中number是不超过长整型的整数,digit为[0, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。裁判测试程序样例:#include <stdio.h>int CountDigit( int number, int digit );int

2021-11-27 21:34:11 503

原创 实验8-1-7 数组循环右移 (20 分)

实验8-1-7 数组循环右移 (20 分)本题要求实现一个对数组进行循环右移的简单函数:一个数组a中存有n(>0)个整数,将每个整数循环向右移m(≥0)个位置,即将a中的数据由(a0​a1​⋯an−1​)变换为(an−m​⋯an−1​a0​a1​⋯an−m−1​)(最后m个数循环移至最前面的m个位置)。函数接口定义:void ArrayShift( int a[], int n, int m );其中a[]是用户传入的数组;n是数组的大小;m是右移的位数。函数ArrayShift须将循环右移后

2021-11-27 21:26:37 509

原创 实验3-3 比较大小 (10 分)冒泡排序

实验3-3 比较大小 (10 分)本题要求将输入的任意3个整数从小到大输出。输入格式:输入在一行中给出3个整数,其间以空格分隔。输出格式:在一行中将3个整数从小到大输出,其间以“->”相连。输入样例:4 2 8结尾无空行输出样例:2->4->8#include<stdio.h>int main(){ int a[3]; for(int i=0;i<3;i++) scanf("%d",&

2021-11-27 20:10:49 171

原创 实验7-2-2 矩阵运算 (20 分)

实验7-2-2 矩阵运算 (20 分)给定一个n×n的方阵,本题要求计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。副对角线为从矩阵的右上角至左下角的连线。输入格式:输入第一行给出正整数n(1<n≤10);随后n行,每行给出n个整数,其间以空格分隔。输出格式:在一行中给出该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。输入样例:42 3 4 15 6 1 17 1 8 11 1 1 1输出样例:35#include<stdio.h>int

2021-11-26 21:44:19 262

原创 实验6-10 统计单词的长度 (15 分)

实验6-10 统计单词的长度 (15 分)本题目要求编写程序,输入一行字符,统计每个单词的长度。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。输入格式:输入给出一行字符。输出格式:在一行中输出每个单词的长度。每个数字后有一个空格。输入样例:How are you?结尾无空行输出样例:3 3 4#include<stdio.h>#include<stdlib.h>typedef struct ListNode{ char

2021-11-26 21:42:26 2188

原创 实验7-2-9 螺旋方阵 (20 分)

实验7-2-9 螺旋方阵 (20 分)所谓“螺旋方阵”,是指对任意给定的N,将1到N×N的数字从左上角第1个格子开始,按顺时针螺旋方向顺序填入N×N的方阵里。本题要求构造这样的螺旋方阵。输入格式:输入在一行中给出一个正整数N(<10)。输出格式:输出N×N的螺旋方阵。每行N个数字,每个数字占3位。输入样例:5结尾无空行输出样例:1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9#inc

2021-11-26 21:40:17 145

原创 实验4-2-3 换硬币 (20 分)

实验4-2-3 换硬币 (20 分)将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?输入格式:输入在一行中给出待换的零钱数额x∈(8,100)。输出格式:要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。输入样例:13结尾无空行输出样例:fen5:2, fen2:1,

2021-11-26 21:38:07 735

原创 实验4-1-12 黑洞数 (20 分)

实验4-1-12 黑洞数 (20 分)黑洞数也称为陷阱数,又称“Kaprekar问题”,是一类具有奇特转换特性的数。任何一个各位数字不全相同的三位数,经有限次“重排求差”操作,总会得到495。最后所得的495即为三位黑洞数。所谓“重排求差”操作即组成该数的数字重排后的最大数减去重排后的最小数。(6174为四位黑洞数。)例如,对三位数207:第1次重排求差得:720 - 27 = 693;第2次重排求差得:963 - 369 = 594;第3次重排求差得:954 - 459 = 495;以后会

2021-11-26 21:26:50 153

原创 实验2-4-7 求平方与倒数序列的部分和 (15 分)

实验2-4-7 求平方与倒数序列的部分和 (15 分)本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m2+1/m+(m+1)2+1/(m+1)+⋯+n2+1/n。输入格式:输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。输入样例:5 10结尾无空行输出样例:sum = 355.845635#include<stdio.h>int ma

2021-11-26 20:33:35 878

原创 实验2-4-6 求交错序列前N项和 (15 分)

实验2-4-6 求交错序列前N项和 (15 分)本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,结果保留三位小数。输入样例:5结尾无空行输出样例:0.917#include<stdio.h>int main(){ double sum=0; int n; scanf("%d",&n); int f=1;

2021-11-26 20:23:55 677

原创 实验2-4-5 输出华氏-摄氏温度转换表 (15 分)

实验2-4-5 输出华氏-摄氏温度转换表 (15 分)输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper]、且每次增加2华氏度的华氏-摄氏温度转换表。温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。输入格式:在一行中输入2个整数,分别表示lower和upper的值,中间用空格分开。输出格式:第一行输出:“fahr celsius”接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsi

2021-11-26 20:02:53 1196

原创 关于结构体大小的计算

关于结构体大小的计算先付代码如下struct str1 { char a; double c; char d;//int *aa; }; printf("%d\n",sizeof(str1)); struct str2 { int c; char a; char d; };printf("%d\n",sizeof(str2)); union str3 { char a[10]; int b; };printf("%d",sizeof

2021-11-26 19:00:56 243

原创 实验2-4-3 求奇数分之一序列前N项和

实验2-4-3 求奇数分之一序列前N项和 (15 分)本题要求编写程序,计算序列 1 + 1/3 + 1/5 + … 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。输入样例:23结尾无空行输出样例:sum = 2.549541#include<stdio.h>int main(){ int n; scanf("%d",&n)

2021-11-26 18:17:33 1333 2

原创 实验7-2-4 计算天数

实验7-2-4 计算天数 (15 分)本题要求编写程序计算某年某月某日是该年中的第几天。输入格式:输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。输出格式:在一行输出日期是该年中的第几天。输入样例1:2009/03/02结尾无空行输出样例1:61结尾无空行输入样例2:2000/03/02输出样例2:62#include<stdio.h>i

2021-11-25 22:13:30 657

原创 实验7-2-3 求矩阵的局部极大值

实验7-2-3 求矩阵的局部极大值 (15 分)给定M行N列的整数矩阵A,如果A的非边界元素A[i][j]大于相邻的上下左右4个元素,那么就称元素A[i][j]是矩阵的局部极大值。本题要求给定矩阵的全部局部极大值及其所在的位置。输入格式:输入在第一行中给出矩阵A的行数M和列数N(3≤M,N≤20);最后M行,每行给出A在该行的N个元素的值。数字间以空格分隔。输出格式:每行按照“元素值 行号 列号”的格式输出一个局部极大值,其中行、列编号从1开始。要求按照行号递增输出;若同行有超过1个局部极大值,.

2021-11-25 21:28:52 199

原创 实验4-2-6 梅森数

实验4-2-6 梅森数 (20 分)形如2n−1的素数称为梅森数(Mersenne Number)。例如22−1=3、23−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了231−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。本题要求编写程序,对任一正整数n(n<20),输出所有不超过2n−1的梅森数。输入格式:输入在一行中给出正整数n(n<20)。输出格式:按从小到大的顺序输出所有不超过2n−1的梅森数,每行一个。如果完全没有,则输出“

2021-11-25 21:07:07 840

原创 实验7-2-1 求矩阵各行元素之和

实验7-2-1 求矩阵各行元素之和 (15 分)本题要求编写程序,求一个给定的m×n矩阵各行元素之和。输入格式:输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。输入样例:3 26 31 -83 12结尾无空行输出样例:9-715结尾无空行#include<stdio.h>int main(){ int m,n; int a[7];//存储每行 int sum=0; scanf("%d%

2021-11-25 20:56:37 1317

原创 实验7-2-7 方阵循环右移

学习内容:实验7-2-7 方阵循环右移 (20 分)本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、⋯、n−1列变换为第n−m、n−m+1、⋯、n−1、0、1、⋯、n−m−1列。输入格式:输入第一行给出两个正整数m和n(1≤n≤6)。接下来一共n行,每行n个整数,表示一个n阶的方阵。输出格式:按照输入格式输出移动后的方阵:即输出n行,每行n个整数,每个整数后输出一个空格。#include<stdio.h>#define N 7void fun(

2021-11-25 20:46:03 158

原创 实验7-2-5 判断上三角矩阵

#include<stdio.h>int main(){ int a[11][11]; int flag[11]; for(int i=0;i<11;i++){ flag[i]=1; for(int j=0;j<11;j++) a[i][j]=0; } int n; scanf("%d",&n); int z=n; int h=0; while(n

2021-11-25 20:41:48 266

原创 操作系统复习

文章目录前言第二章处理机管理第三章进程同步与通信第四章 存储管理第五章文件系统第六章设备管理(对IO设备进行控制和管理)前言参考书籍:CDIO之路第二章处理机管理1.操作系统两个重要特性:程序并发性和资源共享性。(促进多道程序的发展)2.程序执行分为:顺序执行和并发执行顺序执行(内部顺序性+外部顺序性)的主要特点: 封闭性 可再现性并发执行(无须满足外部顺序):资源共享性 失去封闭性和可再现性3.进程(动态)是程序(静态)的动态执行进程实体 = 程序 + 数据 +进程控制块PCB.

2020-12-18 22:11:50 1170 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除