C和C++
本科C题目和C++学习
iKUNqa
细节成败,日积月累
展开
-
【C++/类和对象/2023年10月3日】
C++面向对象:封装、继承、多态访问权限:public公共权限:类内和类外可访问protected保护权限:类内可,类外不可,子可访问父的保护内容私有权限private:类内可,类外不可,子不可访问父的保护内容struct和class区别:struct默认public,class默认private,属性设成private较好。原创 2023-10-03 17:23:03 · 139 阅读 · 0 评论 -
【C++/2023年10月1日】
【黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难】 https://www.bilibili.com/video/BV1et411b73Z/?默认情况下输出一个小数,会显示6位有效数字float4字节/double8字节/int4字节char赋值用单引号(int)ch字符型对应ASCII码(a97、A65)\t水平制表符:加起来八个自动补空格(对齐的效果)布尔bool类型1字节数据的输入:cin>>变量小数可以相除取模运算不可都是小数。原创 2023-10-01 13:17:58 · 110 阅读 · 0 评论 -
指针输出指定学生成绩并计算总平均分
#include <stdio.h>void ave(float *p,int m){float *end=p+m;float ave=0;for(;p<end;p++) ave=ave+*p;ave=ave/m;printf("平均分为:%6.2f\n",ave);}void search(float(*p)[4],int n){ int i; for(i=0;i<4;i++) printf("%6.2f\n",*(*(p+n)+i));}int原创 2021-01-07 00:56:16 · 2005 阅读 · 0 评论 -
指针求平均成绩和最高分最低分
#include <stdio.h>#define N 3void main(){ float score[N],max,min; float *p,ave=0; printf("请输入成绩:\n"); for(p=score;p<score+N;p++) scanf("%f",p); p=score; max=p[0]; min=p[0]; for(;p<score+N;p++) { ave=ave+*p; if(*p>max) ma原创 2021-01-07 00:56:37 · 3335 阅读 · 0 评论 -
选择法升序排序数组并指定m位置开始n个数逆置
#include <stdio.h>#define N 4void main(){ void sort(int *p,int n); int *p,i,a[N],m,n,j,*p1,*p2,temp; p=a; printf("请输入整数:\n"); for(i=0;i<N;i++) scanf("%d",p++); p=a; sort(p,N); for(p=a,i=0;i<N;i++,p++) printf("%d ",*p); printf("\原创 2021-01-07 00:57:10 · 1794 阅读 · 0 评论 -
数组实验:编写程序实现:输入10个数据,按从小到大排序,并显示排序结果。然后再输入一个数,插入数组其中,要求插入后仍然有序。
编写程序实现:输入自定义个数数据,按从小到大排序,并显示排序结果。然后再输入一个数,插入其中,要求插入后仍然有序。#include <stdio.h>#define N 3void main(){void paixu(int x[]);int i,j,t,a[10],num,b[10];printf(“请输入数组:”);for(i=0;i<N;i++){scanf("%d",&a[i]);}paixu(a);printf(“请输入插入的一个数:”);sc原创 2021-01-06 14:03:04 · 21271 阅读 · 3 评论 -
数组实验:有15个数按由小到大顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则打印出“无此数”。
折半查找法:low代表第一个元素的下标,mid代表中间元素的下标,high代表最后一个元素的下标,num为查找的数字始终在low与high区间中找若num小于mid,则high为mid-1,重新定义mid若num大于mid,则low为mid+1,重新定义mid直到找到num等于mid结束,若数组中不存在num,直到low<=high结束只适用于有序的数组#include <stdio.h>int HalfSearch(int a[],int length,int num)原创 2021-01-06 16:16:15 · 5878 阅读 · 2 评论 -
函数实验:编写两个函数,分别求3个数的最大公约数和最小公倍数,主函数调用这两个函数,并输出结果。3个数由用户输入。
#include <stdio.h>#include <math.h>int yueshu(int m,int n){ int r; r=m%n; while(r!=0) { m=n; n=r; r=m%n; } return n;}int beishu(int m,int n) { int z; z=m*n/yueshu(m,n); return z;}main(){ int a,b,c,d,e; printf("请输入三个数原创 2021-01-06 17:00:08 · 1319 阅读 · 0 评论 -
函数实验:编写5个函数分别用来求两个整数的加、减、乘、除及取余数。制作一个菜单,列出这5种运算,以便让用户能够用输入运算符的方法选择进行的运算。
#include <stdio.h>add(int x,int y){ printf("%d\n",x+y);}sub(int x,int y){ printf("%d\n",x-y);}cheng(int x,int y){ printf("%d\n",x*y);}chu(int x,int y){ printf("%d\n",x/y);}quyu(int x,int y){ printf("%d\n",x%y);}meau(){ int x,y;原创 2021-01-06 18:13:17 · 3158 阅读 · 0 评论 -
无函数的输入学生信息按成绩排序并查找
#include <stdio.h>#include<string.h>#define N 2void main(){ int *q,*r,i,j,t,m,v; char **p,*a[N],str[N][6],g[6]; int b[N],c[N]; for(i=0;i<N;i++) { printf("请输入第%d个人姓名、学号、成绩:",i+1); scanf("%s%d%d",str[i],&b[i],&c[i]);原创 2021-01-07 00:57:22 · 184 阅读 · 0 评论 -
统计候选人
#include <stdio.h>#include <string.h>void main(){ int s1=0,s2=0,s3=0,i; char str[100]; char stu0[]={"stu0"}; char stu1[]={"stu1"}; char stu2[]={"stu2"}; char stu3[]={"stu3"}; printf("请输入投票人:"); while(1) { scanf("%s",&str);原创 2021-01-07 00:57:30 · 125 阅读 · 0 评论 -
统计单词和替换
#include <stdio.h>#include <string.h>void main(){ char str[100],c1,c2=' '; int i=0,num=0,length; gets(str); while(str[i]!='\0') { c1=str[i]; if(i==0) c2=' '; else c2=str[i-1]; if(c2==' ') num++; i++; } printf("%d\n",num); l原创 2021-01-06 18:22:33 · 551 阅读 · 0 评论 -
排序数组不交换值,只改变指针的指向
//不交换值,只改变指针的指向,用到了指向指针的指针**p,p为存放一个指针的地址#include <stdio.h>#define N 4void sort(int **p,int n){ int i,j,k,*temp; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) { if(**(p+k)>**(p+j)) k=j; temp=*(p+k原创 2021-01-06 18:21:39 · 223 阅读 · 0 评论 -
链表的创建、输出、查找、删除、添加和排序
#include <stdio.h>#include <stdlib.h>#include <string.h>struct node{ char name[10]; int num; struct birthday { int year; int month; int day; }; float score[3]; struct birthday date; struct node *next;};struct nod原创 2021-01-06 18:20:49 · 324 阅读 · 0 评论 -
结构体记录学生信息并找出最高成绩并删除后输出
#include<stdio.h>#include<stdlib.h>#define N 2struct stu{ int num; char name[10]; int gra; struct student *next;};int main(){ struct stu *creat(struct stu *head,int n); struct stu *findmax(struct stu *head); struct stu *dele(struc原创 2021-01-06 18:19:44 · 751 阅读 · 0 评论 -
电话簿折中查找
#include<stdio.h>#include<stdlib.h>int main(){ int p,j=0,k=9,i; char flag=0,flag2=0; char a[8]; char inf[10][20]={"张三 一教","李四 二教","王五 三教","陈六 四教","邓七 五教", "许八 六教","方九 七教","赵十 八教","李二 九教","张一 十教"}; char num[10][8]={"111原创 2021-01-06 18:18:44 · 89 阅读 · 0 评论 -
带函数的输入学生信息按成绩排序并查找
#include <stdio.h>#include<string.h>#define N 5void sort(char **p,int *q,int *r,int b[N],int c[N]){ int i,j,t,m,v; for(i=0;i<N;i++) { for(j=i+1;j<N;j++) if(*(r+i)<*(r+j)) { t=**(p+i),**(p+i)=**(p+j),**(p+j)=t; m=*(原创 2021-01-06 18:16:44 · 1956 阅读 · 0 评论