7.30作业

1.写一个类斐波那契数列 1 1 2 3 5 8 13 21 34 …

代码展示

#include <stdio.h>
#include <string.h>
int feibo(int n){
	if(n == 1 || n == 2){
		return 1;
	}else if(n>2) {
		return feibo(n-1)+feibo(n-2);
	}
}
int main(int argc, const char *argv[])
{
	int n;
	printf("请输入需要的斐波那契数列行数:");
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		printf("%d ",feibo(i));
	}
	putchar(10);
	return 0;
}

运行结果:

在这里插入图片描述

2.二维整形数组的最大值;

代码展示

#include <stdio.h>
#include <string.h>
#define MAXL 10
#define MAXR 10
int Max(int a[][MAXL],int n,int m){
	int max = a[0][0];

	for(int i=0;i<n;i++){
		for(int j=0;j<m;j++){
			if(a[i][j] > max){
				max = a[i][j];
			}
		}
	}
	return max;
}
int main(int argc, const char *argv[])
{
	int a[MAXR][MAXL];
	int n,m;
	printf("请输入数组的行数:");
	scanf("%d",&n);
	printf("请输入数组的列数:");
	scanf("%d",&m);
	printf("请输入行数为%d,列数为%d的整形数组:\n",n,m);
	for(int i=0;i<n;i++){
		for(int j=0;j<m;j++){
			scanf("%d",&a[i][j]);
		}
	}

	int max = Max(a,n,m);
	printf("最大值为:%d\n",max);
	return 0;
}

运行结果:

在这里插入图片描述

3.函数族的封装。(strcat、strlen、strcmp、strcpy函数)

char *strcat(char *dest, const char *src);

代码展示

#include <stdio.h>
char *mystrcpy(char *dest,char *src){
	char *cp = dest;
	while((*cp ++ = *src++)!='\0');
	return dest;
}
int mystrlen(char *p){
	int len = 0;
	for(;*p!='\0';p++){
		len++;
	}
	return len;
}
int mystrcmp(char *dest,char *src){
	for(;*dest!='\0'||*src!='\0';dest++,src++){
		if(*dest == *src){
			return 0;
		}else return (*dest-*src);
	}
}
char *mystrcat(char *dest, const char *src){
	char *rest = dest;
	while (*dest != '\0') {
        dest++;
    }
	for(;*src !='\0';src++,dest++){
		*(dest) = *(src);
	}
	*(dest) = '\0';
	return rest;
}
int main(int argc, const char *argv[])
{
	char arr[30];
	char brr[30];
	printf("请输入第一个字符串:");
	gets(arr);
	printf("请输入第二个字符串:");
	gets(brr);	
	char *pa = arr;
	char *pb = brr;
	char *p = mystrcat(pa,pb);
	//char *p1 = mystrcpy(pa,pb);
	int len = mystrlen(pa);
	int cmp = mystrcmp(pa,pb);
	printf("第一个字符串长度为:%d\n",len);
	printf("比较结果为:%d\n",cmp);
	printf("拼接结果为:");
	puts(arr);
	return 0;
}


运行结果:

在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值