- 博客(169)
- 收藏
- 关注
原创 输入10个整数,将其中最小的一个数和第一个数对换,把最大的一个数和最后一个数对换。 写三个函数完成,(1)输入10个数;(2)进行处理;(3)输出10个数(指针)
#include <stdio.h>void input(int *s, int n){ int *m; for (m=s;m<s+n;scanf("%d", m++));}void sort(int *s,int n){ int *i,*j,*min,*max,t; for(i=s,min=i;i<s+n;i++) for(j=i+1;j<s+n;*min>*j?min=j++:j++); t=*min,
2021-07-28 11:13:21 572
原创 有N个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数。写一函数实现以上功能,在主函数中输入n个整数和输出调整后的n个数(指针)
#include <stdio.h>int main(){ void move(int [20],int,int); int number[20],n,m,i; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&number[i]); scanf("%d",&m); move(number,n,m); for(i=0;i<n;i++) printf("%d ",number[i
2021-07-28 11:12:54 482
原创 写一函数,求一个字符串的长度。(指针)
#include <stdio.h>#include <stdlib.h>void fix(char *p){ int len=0; while (p[len]!='\0') { len++; } printf("len=%d",len);}int main(){ char a[20]; gets(a); fix(a); return 0;}
2021-07-28 11:11:55 422
原创 有一个字符串包含N个字符,写一个函数,将此字符串从第M个字符开始的全部字符复制到成一个字符串中。(指针)
#include <stdio.h>int main(){ void c_m(char*p1,char*p2,int m); char str1[100],*p1=str1,str2[100],*p2=str2; int m; gets(p1); printf("%s\n",p1); scanf("%d",&m); c_m(p1,p2,m); printf("\n%s",p2); return 0; } void c_m(char *p1, char *p2,
2021-07-28 11:11:20 1139
原创 输入一行文字,找出其中大写字母、小写字母、空格、数字以及其他字符各有多少。(指针)
#include<stdio.h>int main(){ char a[30]; char *p; int i=0,j=0,m=0,n=0,k=0; p=a; gets(a); while(*p!='\0') { if(*p>='A'&&*p<='Z') { i++; } else if(*p>='a'&&*p<='z') { j++; } else if(*p>='0'&a
2021-07-28 11:10:50 392
原创 写一个函数,将一个3*3的整形矩阵转置。(指针)
#include <stdio.h>void trans(int (*s)[3], int x, int y); int main(){ int a[3][3], *p, i, j; for(p=*a;p<*a+9;scanf("%d", p++)); trans(a,3,3); for(i=0;i<3;i+
2021-07-28 11:10:21 1075
原创 将n个数按输入顺序的逆序排列,用函数实现。(指针)
#include<stdio.h>void re(float *p,int n){ float temp; int i; for(i=0;i<=n/2;i++) { temp=*(p+i); *(p+i)=*(p+n-1-i); *(p+n-1-i)=temp; } for(i=0;i<n;i++) printf("%5.1f",*(p+i)); printf("\n");}int main(){ int i,n; float a[30];
2021-07-28 11:09:40 1449
原创 节假日期间某单位安排值班,单位有A、B、C、D、E、F、G七位值班人员,在一星期内(星期一至星期天)每人要轮流值班一天。现 在已知: A值班人员比C值班人员晚一天值班;
#include<stdio.h>#include<stdlib.h>int a[8];char *day[]={"","M","TU","W","TH","F","SA","SU"}; int main(){ int i,j,t; a[4]=6; for(i=1;i<=3;i++) { a[i]=2; if(!a[i+3]) a[i+3]=7; else { a[i]=0; continue; } fo
2021-07-28 11:09:07 450
原创 使用函数计算素数个数并求和
#include<stdio.h>#include<math.h>int prime(int m);int main(int argc,char const *argv[]){ int m,n,i; int sum=0,count=0; while(1) { scanf("%d%d",&m,&n); if(m>=1&&m<=500&&n>=1&&n<=500&&a
2021-07-28 11:08:32 847
原创 二级题库(30)
void fun( int m, int a[10]){ int i; for (i=0; i<10; i++)/found/ a[i] = 0; while (m > 0) {/found/ i = m%10; a[i]++;/found/ m = m/10; }}void fun(int a[][N], int b[]){ int i, j; for (i=0; i<N; i++)
2021-07-21 11:05:53 89
原创 二级题库(29)
void fun( int *a , int n ){ int i, t; for( i=0; i<n; i++ )/found/ a[i]=0; i=0; /found/ t=1; while( i<n ) { a[i]= 1; t++;/found/ i=i+t; }}void fun(char a[]){ int b[26], i, n,max; for (i=0; i<
2021-07-21 11:05:25 175
原创 二级题库(28)
void fun( Q *pa, Q *pb, Q *pc){ Q *p;/found/ pa->next=pb; pb->next=pc; p=pa; while( p ) {/found/ printf(" %c",p->data);/found/ p=p->next; } printf("\n");}void fun( int *s, int n ){/found/ int
2021-07-21 11:04:51 79
原创 二级题库(27)
void fun( int *a, int n ){ int i; for(i=0; i<n; i++) {/found/ if( i%5==0 )/found/ printf("\n");/found/ printf("%d ",a[i]); }}int findmid(int a, int b, int c){ int t; t = (a>b)?(b>c?b:(a>c?c:a))
2021-07-21 11:04:18 95
原创 二级题库(26)
int fun(int x[]){ int i,j,k,t,mid,b[N]; for(i=0;i<N;i++) b[i]=x[i]; for(i=0;i<=N/2;i++) { k=i; for(j=i+1;j<N;j++) if(b[k]>b[j]) k=j; if(k != i ) { /found/ t=b[i]; b[i]=b[k]; b[k]=t; }/found/
2021-07-21 11:03:58 86
原创 二级题库(25)
void fun(char *filename){ FILE *fp; int i, j; STU s[N], t;/found/ fp = fopen(filename, "rb"); fread(s, sizeof(STU), N, fp); fclose(fp); for (i=0; i<N-1; i++) for (j=i+1; j<N; j++)/found/ if (s[i].sno > s[j].sno)
2021-07-21 11:00:07 73
原创 二级题库(24)
double f2(double x, double y){ return x*y; }/found/double fun(int i, double x, double y){ if (i==1)/found/ return f1(x); else/found/ return f2(x, y);}/found/char *fun(char *s,char *t){ int s1=0,t1=0; char *ss,*tt; ss=s;
2021-07-21 10:59:33 78
原创 二级题库(23)
void fun(char (*ss)[M]){ char *ps[N],*tp; int i,j,k; for(i=0; i<N; i++) ps[i]=ss[i]; for(i=0; i<N-1; i++) {/found/ k= i ; for(j=i+1; j<N; j++)/found/ if(strlen(ps[k]) < strlen(ps[j]) ) k=j;/found/ tp=ps[i]; ps
2021-07-21 10:58:54 77
原创 二级题库(22)
void fun(char *s){ int k[26]={0},n,i,max=0; char ch; while(*s) { if( isalpha(*s) ) {/found/ ch=tolower(*s); n=ch-'a';/found/ k[n]+= l ; } s++;/found/ if(max<k[n]) max= k[n] ; } /found/float fun(int k)
2021-07-21 10:58:23 81
原创 二级题库(21)
int fun(char *s){ int sum=0; while(*s) {/found/ if( isdigit(*s) ) sum+= *s- 48 ;/found/ s++; }/found/ return sum ;}int fun(int k){ int m=0,mc=0, j; while((k>=2)&&(mc<10)) {/found/ if((k%13==0)||(k%17==
2021-07-21 10:57:58 83
原创 输入三个字符串,按由小到大的顺序输出(指针)
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ char *s[3],st[3][10],**p,*t; int i,j; for(i=0;i<3;s[i]=st[i],scanf("%s", s[i++])) for(i=0; i<3; i++) for(j=i+1;j<3;strcmp(s[i],s[j])>0?t=s[i],s[i]=s
2021-07-20 13:25:24 330
原创 输入三个整数,按由小到大的顺序输出。(指针)
#include <stdio.h>int main(){ int a,b,c,*i,*j,*k; i=&a,j=&b,k=&c; scanf("%d %d %d",i,j,k); if(*i<*j) { if(*j<*k) printf("%d %d %d\n",*i,*j,*k); else { if(*i<*k) printf("%d %d %d\n",*i,*k,*j); else
2021-07-20 13:24:46 394
原创 编写程序,求出n1至n2自然数之和。要求使用递归方法。
#include<stdio.h> he(int n,int m) { int sum=0; if(n==m) return(n); else return(n+he(n+1,m)); } main() { int n,m; scanf("%d%d",&n,&m); printf("%d",he(n,m)); }
2021-07-20 13:23:58 802
原创 两个乒乓球队进行比赛,各出三人。甲队为A、B、C三人,乙队为X、Y、Z三,已抽签决定比赛名单。 有人向队员打的比赛的名单,A说他不和X比,C说他不和X、Z比。请编程序找出三对比赛选手名单。
#include <stdio.h>int main(){ int i,j,k; for(i='X';i<='Z';i++) { for(j='X';j<='Z';j++) { for(k='X';k<='Z';k++) { if(i=='X'||j==i||k=='X'||k=='Z'||j==k||i==k) { continue; } printf("A对%c,B对%c,C对%c",i,j,k);.
2021-07-20 13:23:35 153
原创 梅森素数。
#include <stdio.h>#include <math.h>int prime(int n){ int i; long k; k=sqrt(n)+1; for(i=2;i<=k;i++) if(n%i==0) return 0; return 1;}int main(){ int mp,n=0,i; for (i=2;i<=20;i++) { .
2021-07-20 13:22:53 109
原创 买卖提将养的一缸金鱼分五次出售系统上一次卖出全部的一半加二分之一条; 第二次卖出余下的三分之一加三分之一条; 第三次卖出余下的四分之一加四分之一条; 第四次卖出余下的五分之一加五分之一条; 最后卖出余
#include<stdio.h> void main() { int i,j,n=0,x; for(i=23;n==0;i+=2) { for(j=1,x=i;j<=4&&x>=11;j++) { if((x+1)%(j+1)==0) x-=(x+1)/(j+1); else { x=0; break; } } if(j==5&&a
2021-07-20 13:22:14 2049
原创 孪生素数。
#include <stdio.h>#include <math.h>int isPrime(int num){ int i; for(i=2;i<=sqrt(num); i++) { if(num%i==0) { return 0; } } return 1;}int main(){ int i,temp,a,b;
2021-07-20 13:21:36 80
原创 定义一个结构体变量(包括年月日)。计算该日在本年中是第几天,注意闰年问题。用函数实现
#include<stdio.h>struct Date{ int year; int month; int day;};int main(){ struct Date p; scanf("%d,%d,%d",&p.year,&p.month,&p.day); int a[12]={31,28,31,30,31,30,31,31,30,31,30,31}; int sum,i; sum=p.day; for(i=0;i&
2021-07-20 13:21:02 1262
原创 编写一个print函数,打印一个学生的成绩数组,该数组中有5个学生的记录, 每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。
#include<stdio.h>struct Student{ int num; char name[20]; int score[3];};int print(struct Student stu[]){ int i,j; for(i=0;i<5;i++) { printf("%5d%10s\t",stu[i].num,stu[i].name); for(j=0;j<3;j++) printf("%d\t",stu[.
2021-07-20 13:20:17 767
原创 有10个学生,每个学数据包括学号、姓名、3门课的成绩。从键盘输入10学生的数据,要求打印出3门课的平均成绩,以及最高分的学生数据。
#include<stdio.h>struct Student{ int num; char name[20]; int score[3];}stu[10];void score_ave(struct Student s[]) { float n=10; int m=3,j,i; float score_ave[3]; for(j=0;j<m;j++) { float sum=0; for(i=0
2021-07-20 13:19:26 2542
原创 二级题库(20)
int fun(char *s, char *t){ int n=0; while(*s) { if(*s < 97) {/found/ *(t+n)= *s ; n++; }/found/ s++ ; } *(t+n)=0;/found/ return n ;}int fun(float x[], int n)/found/ {int j, c=0; float xa=0.0; for (j=0; j<n; j+
2021-07-11 12:01:09 66
原创 二级题库(19)
int fun(char *s){ int n=0, flag=0; while(*s!='\0') { if(*s!=' ' && flag==0) {/found/ n++ ; flag=1;}/found/ if (*s==' ') flag= 0 ;/found/ s++ ; } return n;}int fun(float *s, int n,float *aver){ float ave ,t=0.0;
2021-07-11 11:59:55 85
原创 二级题库(18)
int fun(char *s){ char *lp,*rp;/found/ lp= s ; rp=s+strlen(s)-1; while((toupper(*lp)==toupper(*rp)) && (lp<rp) ) {/found/ lp++; rp -- ; }/found/ if(lp<rp) return 0 ; else return 1;}/found/double fun (int n){ int a
2021-07-11 11:58:59 51
原创 二级题库(17)
void fun(char *s, int n, char *t){ int len,i,j=0; len=strlen(s);/found/ if(n>=len) strcpy(t,s); else {/found/ for(i=len-n; i<=len-1; i++) t[j++]= s[i] ;/found/ t[j]= 0 ; }}int fun( int m){ int i,k; for (i=m+1; ;i++)
2021-07-11 11:56:01 50
原创 二级题库(16)
void fun(int (*a)[N]){ int i=0,j,find=0,rmax,c,k; while( (i<M) && (!find)) { rmax=a[i][0]; c=0; for(j=1; j<N; j++) if(rmax<a[i][j]) {/found/ rmax=a[i][j]; c= j ; } find=1; k=0; while(k<M &&am
2021-07-11 11:55:09 55
原创 二级题库(15)
void fun(int (*a)[N],int k){ int i,j,p,temp;/found/ for(p=1; p<= k; p++) for(i=0; i<M; i++) { temp=a[i][0];/found/ for(j=0; j< N-1 ; j++) a[i][j]=a[i][j+1];/found/ a[i][N-1]= temp; }}int a[M][M] = {0}
2021-07-11 11:54:21 48
原创 二级题库(14)
#include <stdio.h>#define N 3#define M 4/found/void fun(int (*a)[N], int k){ int i,temp ;/found/ for(i = 0 ; i < N ; i++) { temp=a[0][i] ;/found/ a[0][i] = a[k][i] ; a[k][i] = temp ; }}#include <string.h>#
2021-07-11 11:53:41 78
原创 二级题库(13)
char *fun(char *s){ int i, j, k, n; char *p, *t; n=strlen(s)+1; t=(char*)malloc(n*sizeof(char)); p=(char*)malloc(n*sizeof(char)); j=0; k=0; for(i=0; i<n; i++) { if(isdigit(s[i])) {/found/ p[j]=s[i]; j++;} else { t[
2021-07-11 11:51:27 51
原创 二级题库(12)
void fun(NODE *h){ NODE *p, *q; int t;/found/ p = h->next ; while (p) {/found/ q = p->next ; while (q) {/found/ if (p->data > q->data) { t = p->data; p->data = q->data; q->data = t; }
2021-07-11 11:50:47 56
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人