自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_41348629的博客

编程小白的进阶

  • 博客(73)
  • 资源 (5)
  • 收藏
  • 关注

原创 查找有一门以上课程不及格的学生,输出他们的全部课程的成绩

判断每个学生的成绩是否不及格,不及格就将该学生的成绩全部输出#include <stdio.h>int main(void){void search(float (*p)[4],int n);//用来输出某一行或者某一行某一列的元素 float score[3][4]={{65,57,70,60},{58,87,90,81},{90,99,100,98}};search(score,3);return 0; }void search(float (*p)[4],int

2020-09-30 22:20:53 2598 1

原创 有一个班,3个学生,各学四门课,计算总平均分数以及第n个学生的成绩

思路:1:用int *p指向a[0][0]的地址,因为二维数组是顺序存放元素的,所以p++就代表下一个元素的地址,用它来求和即可2:因为要求某个学生的成绩,这里用p指向具有4个元素的一维数组的指针比较好理解,输出某个学生的全部成绩,3:扩展一下,如果让输出某一个课程所有学生的全部成绩,就可以用for循环改变指向行的元素即可,比如(*(p+n)+i) 这时候改变n的值,i的值不变就可以了。//二维数组的元素的顺序存放的 #include <stdio.h>int main(vo

2020-09-30 21:47:32 3508 1

原创 输出二维数组任一行任一列元素的值

#include <stdio.h>int main(void){int i,j;int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};int (*p)[4];//指针变量p指向包含4个整型元素的一维数组 其实也就是二维数组按行划分,p=a;//a代表行 a[0]代表列 a+1代表序号为1的行的起始地址scanf("%d%d",&i,&j);printf("a[%d,%d]=%d\n",i,j,*(*(p+i)+j

2020-09-30 21:16:30 2057

原创 有一个3*4的二维数组,要求用指向元素的指针变量输出二维数组各元素的值

#include <stdio.h>int main(void){int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};int *p;for(p=a[0];p<a[0]+12;p++)//a[0]代表列,二维数组的各元素在内存中是//按行顺序存放的 { if((p-a[0])%4==0) { printf("\n"); } printf("%4d",*p);}printf("\n");return 0;}...

2020-09-30 21:14:00 2283

原创 将数组a中n个整数按相反顺序排放,两种方法

第一种方法:用数组来做,数组名做形参和实参#include <stdio.h>void fun(int arry[],int n)//进行反序排序{int i;int temp;for(i=0;i<=(n-1)/2;i++){ temp=arry[i]; arry[i]=arry[n-1-i]; arry[n-1-i]=temp;}}void sort (int arr[],int n)//输出排序后的数组元素{printf("输出反序后的数组:\n");

2020-09-29 22:18:49 8417 2

原创 输入3个整数a,b,c,要求按由小到大的顺序将它们输出,用函数实现

用的是函数的嵌套调用来做的#include <stdio.h>void exchange(int *q1,int *q2,int *q3){void(swap)(int *p1,int *p2);{ if(*q1<*q2) { swap(q1,q2); } if(*q1<*q3) { swap(q1,q3); } if(*q2<*q3) { swap(q2,q3); } }}void(swap)(int *p1,int *p2

2020-09-28 21:21:52 4850 2

原创 输入a和b两个整数,按先大后小的顺序输出a和b.

通过指针来进行进行值的互换#include <stdio.h>int main(void){int a,b;int *p1,*p2,*p;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a<b){ p=p1; p1=p2; p2=p;} printf("a=%d,b=%d\n",a,b);printf("max=%d,min=%d\n",*p1,*p2);return 0;}...

2020-09-28 20:47:08 8315

原创 用递归方法求n阶勒让德多项式的值,递归公式为....

#include <stdio.h>float p(int n,int x){if(n==0){ return 1;}if(n==1){ return x;}if(n>=1){ return ( (2*n-1)*x-p((n-1),x)-(n-1)*p((n-2),x))/n;//多次调用P函数}}int main(void){int x,n;float p (int n,int x);scanf("%d%d",&n,&x);pr

2020-09-28 16:56:52 5356

原创 写一个函数,输入一个4位数字,要求输出这4个数字字符

#include<stdio.h>#include<string.h>int main(){char a[10];gets(a);for(int i=0;i<strlen(a);i++)printf("%c ",a[i]);return 0;}虽然这是个函数调用题吧,不过我还是觉得这样做比较容易。

2020-09-27 20:21:05 4469

原创 写一个函数,将一个字符串中的元音字母复制到另一个字符串,然后输出

#include <stdio.h>void copy(char s[],char c[]){int i,j;for(i=0,j=0;s[i]!='0';i++){ if(s[i]=='a'||s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i]=='I'||s[i]=='i'||s[i]=='O'||s[i]=='o'||s[i]=='U'||s[i]=='u') { c[j]=s[i]; j++;//if为真执行一次才加一 } }

2020-09-27 20:11:07 4365

原创 写一个函数将两个字符串连接 不使用strcat

#include <stdio.h>int main(void){void fun (char str1[],char str2[],char str3[]);char a[100],b[100],c[100];printf("输入第一个字符串:\n");scanf("%s",a);printf("输入第二个字符串:\n");scanf("%s",b);fun(a,b,c);printf("%s\n",c);return 0;} void fun (char str1[

2020-09-27 18:49:09 3218

原创 谭浩强C程序设计第七章第四题 写一个函数,使给定的一个3*3的二维整形数组转置,即行列互换

另外我会将谭浩强《C语言程序设计》这本书上所有的代码和课后习题全部整理发到博客上,需要的朋友可以看一下,不足的地方希望各位能提些建议,我一定会积极采纳。#include <stdio.h>int main(void){int fun(int a[][3]);int i,j;int a[3][3];printf("请输入3*3的矩阵:\n");for(i=0;i<3;i++){ for(j=0;j<3;j++) { scanf("%d",&a[i][j

2020-09-27 18:34:03 1073

原创 写一个判断素数的函数,在主函数输入一个整数输出是否为素数的信息

关于素数的问题,我前面整理了好几种思路,其中还包括筛选法之类的,另外我会将谭浩强《C语言程序设计》这本书上所有的代码和课后习题全部整理发到博客上,需要的朋友可以看一下,不足的地方希望各位能提些建议,我一定会积极采纳。#include <stdio.h>int fun(int n){int i;for(i=2;i<n;i++){ if(n%i==0) { break; }}if(i<n){ printf("%d不是素数\n",n);}else pri

2020-09-27 18:13:58 20770 9

原创 谭浩强C程序设计第七章第一题 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主调函数调用这两个函数,并输出结构

最大公约数和最小公倍数的概念之类的,我前面的博客有详细介绍,不懂的可以去看看。另外我会将谭浩强《C语言程序设计》这本书上所有的代码和课后习题全部整理发到博客上,需要的朋友可以看一下,记得关注哦,不要迷路。不足的地方希望各位能提些建议,我一定会积极采纳。int fun1(int n,int m){int t,r;if(m>n){ t=n; n=m; m=t;}while(m!=0){ r=n%m; n=m; m=r; } printf("最大公约数是:%d\n",

2020-09-27 17:49:25 570

原创 输出1到5的阶乘值

include <stdio.h>int main(void){int fac(int n);int i;for(i=1;i<=5;i++){ printf("%d!=%d\n",i,fac(i));}return 0;}int fac(int n){static int f=1;//因为是static存储,所以调用结束后不会自动释放内存//而且每次保留上一次的值 f=f*n;return f;}...

2020-09-26 20:52:43 4394

原创 有一个3*4的矩阵,求所有元素中的最大值 函数调用

#include <stdio.h>int sort(int arry[][4]){int i,j,k,max;max=arry[0][0];for(i=0;i<3;i++){ for(j=0;j<4;j++) { if(arry[i][j]>max) { max=arry[i][j]; } }} return max;}int main(void){ int i,j,max;int a[3][4];printf("pleas

2020-09-26 19:59:13 3090

原创 用选择法对数组中10个整数按有小到大排序 两种思路

//两种选择法来对数组进行排序#include <stdio.h>int sort(int a[]){int i,j,t;for(int i=0;i<10;i++){ for(j=i+1;j<10;j++)//第一个与后面的依次比较 { if(a[i]>a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } }}}int input(int arry2[]){int i;for(i=0;i&l

2020-09-26 19:38:44 6627 2

原创 有一个一维数组score,内放10个学生成绩,求平均成绩 用数组名做函数的参数

#include <stdio.h>int average(int arry[])//arry数组和score数组指向同一个单元{int aver,i;int sum=arry[0];for(i=0;i<10;i++){sum =sum +arry[i];}aver=sum/10;}int main(void){int average(int arry[]);int score[10];int j,a;for(j=0;j<10;j++){scanf

2020-09-25 21:07:40 7910 1

原创 输入10个数,要求输出其中值最大的元素和该数是第几个数

其实对于这种输入多个数,要求 求最大值的这种,就是用函数调用比较方便观察,而且第二个for循环也可以单独拿出来作为一个调用函数#include <stdio.h>int max(int x,int y){return(x>y?x:y);}int main(void){int max(int x,int y);int a[10];int m,n,i;printf("输入元素的值:\n");for(i=0;i<10;i++){ scanf("%d",&

2020-09-25 20:45:31 5173

原创 汉诺塔问题

这是关于分治和递归的思想,等我将算法总结之后再发布,总的来说汉诺塔问题比较抽象#include <stdio.h>int hanoi(int n,int a,int b,int c){void move (char x,char y);if(n==1){ move(a,c);} else { hanoi(n-1,a,c,b); move(a,c); hanoi(n-1,b,a,c);}}void move(char x,char y){printf("%c-

2020-09-25 20:21:56 270

原创 有五个学生坐在一起,问第5个学生多少岁........和用递归方法求n!

#include <stdio.h>int fun(int n){int c;if(n==1){ c=10;}else c=fun(n-1)+2;return c;}int main(void){int fun(int);int age;age=fun(5);printf("age=%d\n",age);return 0;}求n!for循环和while循环就能解决此问题,不过我们要用函数调用解决一下,方便理解,这也是C语言中的一个重要的算法,递归调用,

2020-09-25 17:58:34 1929

原创 4个整数 找其中最大的数 函数嵌套调用来处理

我会将谭浩强《C语言程序设计》这本书上所有的代码和课后习题全部整理发到博客上,需要的朋友可以看一下,记得关注,不要迷路哦。不足的地方希望各位能提些建议,我一定会积极采纳。#include <stdio.h>int max2(int x,int y){int z;z=x>y?x:y;} int max(int a,int b,int c,int d){int max2(int ,int);//在函数中需要声明一下max2 int m;m=max2(a,b);m=max

2020-09-24 18:13:32 1057

原创 函数调用来求两个数中的最大值

#include <stdio.h>int max(int x,int y){int z;if(x>y){ z=x;}else z=y;return z;/*或者z=x>y?x:z; */}int main(void){int max(int x,int y);int a,b,c;printf("please input numbers:\n");scanf("%d%d",&a,&b);c=max(a,b);//max 函数

2020-09-24 17:58:22 4369

原创 有15个数按由大到小顺序存放在一个数组中......用折半查找的方法

折半查找法我自己对折半查找的理解1:当要查找的那个数比中间数要大的时候,high不变,low就从mid+1开始逐渐接近high2: 当要查找的那个数比中间数要小的时候,low不变,high就从mid-1开始逐渐接近low3:当时我考虑的是,如果(high+low)/2为一个分数怎么办,整除不开,后来慢慢了解到,int类型是把小数点后面去掉的,所以不用担心这些问题了,具体课本有解释,仔细研读。明白这些之后,折半查找就容易做了#include <stdio.h>#define N 1

2020-09-23 18:13:02 8385 2

原创 找出一个二维数组中的鞍点

解决这个题花费了一个多小时的时间,最终还是解决了,我的基本是思路是先找出某一行最大的,然后再找某一列最小的,一个for循环贯穿整个程序,一行一行的来比较,然后在每一行进行列的比较就可以了。可能看起来比较简单,还是建议自己动手敲一敲,你会发现很多意想不到的错误!!!!#include <stdio.h>#define N 4#define M 5int main(void){int a[N][M];int i,j,k,max,num,flag;printf("请输入数字:\n");

2020-09-23 17:00:49 2774 3

原创 输出杨辉三角的前十行

杨辉三角就是下三角矩阵,并且对角线和第一列都为1,其他的第三行开始上一行同列和上一行前一列之和,#include <stdio.h># define N 10int main(void){int a[N][N];int i ,j;for(i=0;i<N;i++) { a[i][i]=1; a[i][0]=1;}for(i=2;i<N;i++)//从第三行开始 { for(j=1;j<=i-1;j++)//下三角矩阵,第一列和对角线都为1,所以j的范围

2020-09-22 17:50:44 7842

原创 Dev-Cpp/MinGW32/lib/libmingw32.a(main.o):mai [Error] ld returned 1 exit status

这样的错误就是要坚查一下main 是不是写错了,我出现好几次这样的问题,最后检查好几遍才发现,main写错了,哈哈哈哈哈,失误失误了。最好是检查一下函数

2020-09-22 17:18:30 761 3

原创 将一个数组中的值按逆序重新排放。例如,原来顺序为8,6,5,4,1.要求改为1,4,5,6,8.

#include <stdio.h>int main(void){int a[5];int i,temp;printf("请输入五个数:\n");for(i=0;i<=4;i++){ scanf("%d",&a[i]);}printf("改变顺序之后:\n");for(i=0;i<=4/2;i++){ temp=a[i]; a[i]=a[4-i]; a[4-i]=temp;}printf("请输出五个数:\n");for(i=0;i<

2020-09-22 17:15:59 6119

原创 有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中,已解决

#include <stdio.h>int main(void){int a[10];int i,j,temp1,temp2,num,end;printf("请输入十个数:\n");for(i=0;i<10;i++)//输入10个数 { scanf("%d",&a[i]);} end=a[9];//令最后一个给end 目的是下面判断插入的数跟最后一个数谁大谁小 printf("\n"); printf("输出10个数:\n"); for(i=0;

2020-09-22 17:02:32 1478

原创 求一个3*3的整型矩阵对角线元素之和,觉得很实用,也很好理解

#include <stdio.h>int main(void) {int a[3][3],sum=0,sum2=0,i,j,n=1;printf("请输入元素:\n");for(i=0;i<=2;i++){ for(j=0;j<=2;j++) { scanf("%d",&a[i][j]); } }printf("输出刚刚输入的元素:\n");for(i=0;i<=2;i++){ for(j=0;j<=2;j++) {

2020-09-22 00:43:54 8223 1

原创 用选择法对10个整数进行排序,已解决

//选择法 //也就是第一个数逐次跟每个数比较,之后最小的放在第一位上,以此类推#include <stdio.h>int main(void){int a[10];int i,j,temp;printf("请输入要排序的十个元素:\n");for(i=0;i<10;i++){ scanf("%d",&a[i]);}printf("\n");for(i=0;i<10;i++)//每一个与后面的都要进行比较, { for(j=i+1;j&l

2020-09-22 00:21:16 30614 10

原创 用筛选法求100以内的素数,有详解,已解决

//筛选法就是“埃拉托色尼筛法”//就是将非素数“挖掉”,只剩下素数,所谓挖掉就是把非素数归为0,之后 进行判断即可//1:先输入数组元素//2:先把a[1]等于0;//3:i从2开始,可以小于100,也可以用根号下(100)来做,过程一样//4:找2的倍数,3的倍数,四的倍数。。。。。//如果可以整除则为0//具体看代码 #include <stdio.h>#include <math.h>int main(void){int a[100];int i,

2020-09-21 23:48:08 4363 10

原创 有3个字符串,要求找出其中最大者

#include <stdio.h>#include <string.h>int main (void){char str[3][20];//定义一个二维数组存放字符串char string[20];//定义一维字符数组,作为交换字符串时的临时字符数组 int i; for(i=0;i<=2;i++) { gets(str[i]); } if(strcmp(str[0],str[1])>0) { strcpy(string,str[0]);

2020-09-21 19:17:02 1913

原创 字符数组的误区

//字符数组必须进行初始化,否则里面的元素是不可预料的 //C语言中是将字符串作为字符数组来处理的 //C语言中规定了一个“字符串结束标志”,以‘\0’作为结束标志,如前九个是字符,第十个是0字符//则有效字符是9个//char []={"I am happy"}==char []="I am happy"//数组长度是11而不是10,因为字符串常量的最后由系统加上一个'\0', //char []={'I','','a'.'m','','h','a','p','p','y'} 这个数组长.

2020-09-21 18:58:43 278

原创 将一个二维数组行和列的元素互换,存到另一个二维数组中

#include <stdio.h>int main(void){int a[2][3]={{1,2,3},{4,5,6}},b[3][2],i,j;printf("请输出a的元素:\n");for(i=0;i<=1;i++){ for(j=0;j<=2;j++) { printf("%d",a[i][j]); b[j][i]=a[i][j]; } printf("\n"); }printf("请输出b的元素:\n");for(j=0;j<=

2020-09-21 17:38:44 14049 1

原创 起泡法排序,从小到大顺序排列

//起泡法排序基本思路://每次将相邻的两个数进行比较,将小的调到前面//n个数要进行n-1趟比较,每一趟比较要进行n-1次//所以第j趟要进行n-j趟比较 #include <stdio.h>int main (void){int a[10];int i,j,t;printf("请输入数字:\n");for(i=0;i<=9;i++){ scanf("%d",&a[i]); }printf("\n");for(j=0;j<=8;j++)//

2020-09-21 17:23:12 4887 1

原创 两个乒乓球队进行比赛,各出三人。谭浩强C语言第五章课后习题17,已解决

//通过题目可知 A-z C-Y B-X//假设A-i B-j c-k,i!=j i!=k j!=k;因为一个队员不能跟两个人比赛//最后再用题目中的条件即可 //一个语句就能实现 #include <stdio.h>int main (void){char i,j,k;for(i='x';i<='z';i++){ for(j='x';j<='z';j++) { if(i!=j)//如果i==j则下面不会运行 { for(k='x';k<

2020-09-21 16:44:58 436

原创 用数组来处理Fibonacci数列问题

#include <stdio.h>int main(void){int i,a[20]={1,1};for(i=2;i<20;i++){ a[i]=a[i-1]+a[i-2];}for(i=0;i<20;i++){ if(i%5==0) { printf("\n"); } printf("%d\t",a[i]);}return 0;}

2020-09-20 19:09:03 1270

原创 对10个数组元素依次赋值0,1,2,3,4,5,6,7,8,9,要求按逆序输出

#include <stdio.h>int main (void){int i,a[10];for(i=0;i<10;i++){ a[i]=i; printf("%d",a[i]);} printf("\n"); printf("逆序输出:");for(i=9;i>=0;i--){ printf("%d",a[i]); } printf("\n");return 0;}

2020-09-20 18:59:27 5435

原创 猴子吃桃问题,谭浩强C语言课本第五章第12题

#include <stdio.h>int main(void){int x1,x2,day;x2=1;day=9;for(day=9;day>0;day--){ x1=(x2+1)*2; x2=x1; } printf("总共:%d\n",x1);return 0;}

2020-09-20 18:17:38 153

.so文件和安装步骤.rar

centos下php安装pgsql和pdo_pgsql扩展,这是另一种方法,很简便,用.so文件来安装

2021-04-25

centos下php安装pgsql和pdo_pgsql扩展,这是另一种方法,很简便,用.so文件来安装

centos下php安装pgsql和pdo_pgsql扩展,这是另一种方法,很简便,用.so文件来安装

2021-04-25

C语言课本编程.rar

C语言谭浩强第五版例题和课后习题答案程序程序的运行,当时自己学c语言的时候把每个程序都敲了一遍,也算比较全,都能运行通过,用的dev和VC++6.0,这两个软件,需要的自行下载。

2021-04-09

Linux的学习.docx

帮助刚刚接触linux的人群,包括我个人接触linux时间并不长,这也是我自己总结的命令,跟着我的命令敲一遍,大体上就能了解啦。

2021-04-09

数据库的学习笔记.docx

数据库小白

2021-04-02

空空如也

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

TA关注的人

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