本文主要是介绍寒假作业2024.2.14,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.请编程实现二维数组的杨辉三角
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <unistd.h>
int main(int argc, const char *argv[])
{int n;printf("please enter n:");scanf("%d",&n);int arr[n][n];for(int i=0;i<n;i++){for(int j=0;j<=i;j++){if(j==0 || j==i){arr[i][j]=1;}else{arr[i][j]=arr[i-1][j]+arr[i-1][j-1];}printf("%d\t",arr[i][j]);}puts("");}return 0;
}
2.请编程实现二维数组计算每一行的和以及列和
int main(int argc, const char *argv[])
{int n,m;printf("please enter n and m:");scanf("%d %d",&n,&m);int arr[n][m];printf("please enter arr:");for(int i=0;i<n;i++){for(int j=0;j<m;j++){scanf("%d",&arr[i][j]);}}for(int i=0;i<n;i++){for(int j=0;j<m;j++){printf("%d ",arr[i][j]);}puts("");}//计算每一行的和int sum1;for (int i=0;i<n;i++) {sum1=0;for (int j=0;j<m;j++) {sum1+=arr[i][j];}printf("第%d行的和为%d\n",i+1,sum1);}//计算每一列的和int sum2;for (int j=0;j<m;j++) {sum2=0;for (int i=0;i<n;i++) {sum2+=arr[i][j];}printf("第%d列的和为%d\n",j+1,sum2);}return 0;
}
3.请编程实现二维数组计算第二大值
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <unistd.h>
int main(int argc, const char *argv[])
{ int n,m;printf("please enter n and m:");scanf("%d %d",&n,&m);int arr[n][m];printf("please enter arr:");for(int i=0;i<n;i++){for(int j=0;j<m;j++){scanf("%d",&arr[i][j]);}}for(int i=0;i<n;i++){for(int j=0;j<m;j++){printf("%d ",arr[i][j]);}puts("");}
//计算第二大值int Max1=arr[0][0];int Max2=arr[0][0];for (int i=0;i<n;i++){for (int j=0;j<m;j++){if (arr[i][j]>Max1){Max2=Max1;Max1=arr[i][j];}else if (arr[i][j]>Max2 && arr[i][j]<Max1) {Max2=arr[i][j];}}}printf("第二大值为%d\n",Max2);return 0;
}
4.请使用非函数方法实现系统函数strcat,strcmp,strcpy,strlen
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <unistd.h>
void cat();
void cmp();
void cpy();
void len();
int main(int argc, const char *argv[])
{printf("字符串连接strcat\n");cat(); printf("字符串比较strcmp\n");cmp(); printf("字符串复制strcpy\n");cpy(); printf("字符串计算长度strlen\n");len();return 0;
}
//字符串连接
void cat()
{char str1[100];char str2[100];printf("请输入第一个字符串:");gets(str1);printf("请输入第二个字符串:");gets(str2);int i,j;for(i=0;str1[i]!='\0';i++);for(j=0;str2[j]!='\0';j++){str1[i+j]=str2[j];}str1[i+j]='\0';puts(str1);
}
//字符串比较
void cmp()
{char str1[100];char str2[100];printf("请输入第一个字符串:");gets(str1);printf("请输入第二个字符串:");gets(str2);int i=0;while(str1[i]==str2[i]){if(str1[i]=='\0')break;i++;}if(str1[i]-str2[i]>0){puts("str1>str2");}else if(str1[i]-str2[i]<0){puts("str1<str2");}else if(str1[i]-str2[i]==0){puts("str1==str2");}
}
//字符串复制
void cpy()
{char str1[100];char str2[100];printf("请输入第一个字符串:");gets(str1);printf("请输入第二个字符串:");gets(str2);int i;for(i=0;str2[i]!='\0';i++){str1[i]=str2[i];}str1[i]='\0';puts(str1);
}
//字符串计算长度
void len()
{char str1[100];char str2[100];printf("请输入第一个字符串:");gets(str1);printf("请输入第二个字符串:");gets(str2);int i,j;for(i=0;str1[i]!='\0';i++);printf("字符串str1的长度为%d\n",i);for(j=0;str2[j]!='\0';j++);printf("字符串str2的长度为%d\n",j);
}
这篇关于寒假作业2024.2.14的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!