C语言实验六

article/2025/3/18 12:59:17

1. 从键盘上输入3个字符串,找出其中最大的字符串

#include <stdio.h>#include<string.h>int main(){ int i,j,k;char a[100],b[100],c[100];printf("请输入第一个字符串\n");gets(a);printf("请输入第二个字符串\n");gets(b);printf("请输入第三个字符串\n");gets(c);i=strlen(a);j=strlen(b);k=strlen(c);if ((i>j)&&(i>k)){printf("最长的字符串是");puts(a);}if ((j>i)&&(j>k)){printf("最长的字符串是");puts(b);}if ((k>i)&&(k>j)){printf("最长的字符串是");puts(c);}  }
#include<stdio.h>
#include<string.h>
int main()
{char str[3][20];char string[20];int i;for(i=0;i<3;i++)gets(str[i]);if(strcmp(str[0],str[1])>0)strcpy(string,str[0]);elsestrcpy(string,str[1]);if(strcmp(str[2],string)>0)strcpy(string,str[2]);printf("\n");printf("%s\n",string);return 0;
}

在这里插入图片描述

1.1 从键盘上输入3个字符串,找出其中最大的字符串

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<string.h>
int getsum(char *str);//获取字符串ASC总和
char *getmax(int num[3]);
int main()
{char str[3][10];int indext;int len[3];//3个字符串长度int sum[3];//3个字符串的ASC码总和printf("测试:输入3个字符串(最多9个字符):\n");scanf("%s",&str[0][0]);scanf("%s",&str[1][0]);scanf("%s",&str[2][0]);sum[0]=strlen(&str[0][0]);sum[1]=strlen(&str[1][0]);sum[2]=strlen(&str[2][0]);//获取3个字符串的ASC码总和indext=getmax(sum)[0]-'0';printf("ASC码值和最大的是:%s\n",&str[indext][0]);return 1;
}int getsum(char *str)//获取字符串ASC总和
{int len=strlen(str),i,sum=0;for(i=0;i<len;i++){sum=sum+(int)str[i];}return sum;
}
char *getmax(int num[3])//3个整数型的数字比较,返回最大的那个数组下标如果多个最大值返回多个下标
{char *renum=(char *)malloc(sizeof(char)*4);memset(renum,0,4);if(num[0]>=num[1] && num[0]>=num[2]){if(renum[0]==0)renum[0]='0';else if(renum[1]==0)renum[1]='0';else if(renum[2]==0)renum[2]='0';}if(num[1]>=num[2] && num[1]>=num[0]){if(renum[0]==0)renum[0]='1';else if(renum[1]==0)renum[1]='1';else if(renum[2]==0)renum[2]='1';}if(num[2]>=num[1] && num[2]>=num[0]){if(renum[0]==0)renum[0]='2';else if(renum[1]==0)renum[1]='2';else if(renum[2]==0)renum[2]='2';}return renum;
}

在这里插入图片描述

2.编写一程序,将字符数组s1和字符数组s2中的两个字符串连接起来,并且存放在数组s1中,然后再将连接后的s1中的字符串拷贝到数组s2中;

#include<stdio.h>#include<string.h>main(){char str_1[500],str_2[500];int i,j;printf("Input a string s1:\n");gets(str_1);printf("Input a string s2:\n");gets(str_2);for(i=0;str_1[i]!='\0';i++);for(j=0;str_2[j]!='\0';j++)str_1[i+j]=str_2[j];str_1[i+j]='\0';
for(i=0;str_1[i]!='\0';i++);for(j=0;str_2[j]!='\0';j++)str_2[j]=str_1[i];str_2[j]='\0';printf("str_1 is:\n%s\n",str_1);
strcpy(str_2, str_1);
printf("str_2 is:\n%s\n",str_2);
}

在这里插入图片描述

3. 求一个4 x 4的整型矩阵的对角线元素之和

#include<stdio.h>
int main()
{
int i,j,a[4][4];
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
}
}
int sum=a[0][0];
for(i=1;i<4;i++)
{
for(j=1;j<4;j++)
{
if(i==j)
{
sum+=a[i][j];
}
}
}
printf("%d\n",sum);
return 0;
}

在这里插入图片描述

4. 任意输入两个矩阵,计算矩阵的乘积


#include <stdio.h>
int main()
{int i,j,k;
int matrix_2_3[2][3];
int matrix_3_2[3][2];
int result[2][2];
printf("请为第一个矩阵赋值:\n");
for(i=0; i<2; i++)
{for(j=0; j<3; j++){scanf("%d",&matrix_2_3[i][j]);}
}
printf("请为第二个矩阵赋值:\n");
for(i=0; i<3; i++)
{for(j=0; j<2; j++){scanf("%d",&matrix_3_2[i][j]);}
}
//三层循环计算两矩阵相乘
for(i=0; i<2; i++)
{for(j=0; j<2; j++) //注意条件,这段代码块是为result数组计算并赋值{int temp = 0;for(k=0; k<3; k++){temp += matrix_2_3[i][k] * matrix_3_2[k][j];}result[i][j] = temp;}
}
printf("两矩阵相乘后:\n");
for(i=0; i<2; i++)
{for(j=0; j<2; j++){printf("%d ",result[i][j]);}printf("\n");
}}

在这里插入图片描述

5. 输出下列杨辉三角的前10行

#include<stdio.h>main(){int i, j, a[11][11];                             /*定义i,j,a[11][11]为基本整型*/for (i = 1; i < 11; i++)                     /*for循环i的范围从1到10*/{a[i][i] = 1;                             /*对角线元素全为1*/a[i][1] = 1;                             /*每行第一列元素全为1*/}for (i = 3; i < 11; i++)                     /*for循环范围从第3行开始到第10行*/for (j = 2; j <= i - 1; j++)                 /*for循环范围从第2列开始到该行行数减一列为止*/a[i][j] = a[i - 1][j - 1] + a[i - 1][j];  /*第i行j列等于第i-1行j-1列的值加上第i-1行j列的值*/for (i = 1; i < 11; i++){for (j = 1; j <= i; j++)printf("%4d", a[i][j]);              /*通过上面两次for循环将二维数组a中元素输出*/printf("\n");                            /*每输出完一行进行一次换行*/
}
}

在这里插入图片描述


http://chatgpt.dhexx.cn/article/mjC25UhG.shtml

相关文章

c语言报告实验反思,c语言实验总结与反思

c语言实验总结与反思 c语言实验总结与反思怎么写?以下是小编整理的相关范文,欢迎阅读。 c语言实验总结与反思一 这个星期,我们迎来了C语言实训——一次至为重要的实训。在这个星期里,同学们都很认真的做着那20多道实训题目,遇到不懂的互相请教,或请问老师。非常感谢老师对…

C语言实验题目及其解答

实验一 1、有以下C语言程序&#xff0c;功能为输入圆的半径&#xff0c;求出圆周长和圆面积。采用类的形式来改写该程序。&#xff08;要求半径的默认初值为0&#xff09; #include <iostream.h> const float PI3.14; float circumference(float r); float area(float r…

南京邮电大学C语言实验报告四

实验四&#xff1a;一维与二维数组实验 实验题目&#xff08;1&#xff09;【见实验教材实验五的题目&#xff11;】&#xff1a;编写程序exp5_1.c&#xff0c;在主函数中定义一维数组int array[10]&#xff0c;自定义以下函数&#xff1a;输入数组元素&#xff0c;输出数组元…

(C语言)实验2 用C语言编写程序

【实验目的】 1、熟悉顺序、分支和循环三种基本的控制结构。 2、使用C语言编制简单的顺序、分支和循环三种基本的控制结构的程序。 3、尝试用C 语言编写程序解决实际问题。 【实验要求】 1、实验共4题&#xff0c;每题25分&#xff0c;共100分&#xff1b; 2、实验需在截至日…

【C语言趣味实验】

C语言趣味实验--电脑关机&&猜数字 前言一、如何实现强制关机&#xff1f;shutdown用法 二、优化改进1&#xff1a;通过输入的字符串来判断是否关机改进2&#xff1a;通过猜数字是否正确来判断是否关机 总结 前言 亲爱的朋友们大家好&#xff0c;正如题目所见&#xff…

南京邮电大学C语言实验报告二

实验二&#xff1a;选择与循环结构编程 实验题目&#xff08;1&#xff09;【见实验教材实验二的题目6】&#xff1a;编程序exp2_6.c&#xff0c;读入3个double型变量a,b,c的值&#xff0c;用if语句判断它们能否构成三角形&#xff0c;如果能构成三角形又是构成的何种三角形&a…

C语言实验四

目录 1.国王的麦子 2. 求完数。 3.打印九九乘法表 4&#xff0e;求1!2!3!…20!&#xff1b; 5.&#xff08;1&#xff09;输入一行字符&#xff0c;分别统计出其中的英文字母、空格、数字和其它字符的个数。 &#xff08;2&#xff09;在得到正确结果后&#xff0c;请修…

c语言的实验,c语言 实验1

实验结论 Part 1 首次运行Part 1的几个实验内容时会产生错误&#xff0c;原因如下 有时忘记在主函数中的每行末尾加分号 return 0 时空格错误导致程序运行失败 # include int product (int,int); int main (void) { int x,y,s; scanf("%d%d",&x,&y); sprodu…

大一 C语言 实验1

《程序设计基础》上机实验报告 学号&#xff1a;201420224912 姓名&#xff1a;许培鑫 班级&#xff1a;计算机149 日期&#xff1a;2015-5-7 指导教师&#xff1a;成筠 成绩&#xff1a; ----------------------------------------------------------------- 实验六…

C语言 实验五

复制之前给个赞&#xff0c;好吗(〃▽〃) 题目一 7-1 参考书 (100 分) 某次考试是开卷考试。老师规定&#xff0c;纸质的资料&#xff08;以下统一称为参考书&#xff09;可以随便带&#xff0c;或者说只要你背得动想带多少本参考书都行。于是同学们就开始准备参考书了。就在…

C语言程序设计实验报告——实验一

C语言程序设计实验报告——实验一 实验一 简单C程序调试&#xff08;一&#xff09;第一个C程序1、实验题目&#xff1a;2、实验环境&#xff1a;3、实验步骤及过程&#xff1a;4、实验结果&#xff08;~~猜都猜得出来~~ &#xff09; &#xff08;二&#xff09;第二个C程序1、…

C语言实验报告(通用)

​​​​​​ 设计目的 公交线路基本信息的录入。1、线路信息的录入、修改等操作。2、要求系统要以菜单方式进行工作。3、公交线路包括&#xff1a;公交车号、起始发出车时间与末班车时间、票价等信息。 1.2 对知识点的基本介绍或者代码举例 正文&#xff0c;中文&#xff1a;宋…

RSA加密算法的数学原理

文章目录 RSA数学原理获取两个不相等的质数pq把p和q相乘&#xff0c;得到n计算出小于n的自然数中&#xff0c;有多少数与n互质&#xff08;欧拉函数&#xff09;在1和φ(n)之间&#xff0c;选取一个随机质数e求e和φ(n)的模反元素d&#xff08;裴蜀定理、扩展欧几里得算法&…

常见的加密算法原理与实现:RSA加密

系列四&#xff1a;RSA加密 一、基本背景二、算法原理2.1、生成公钥和私钥2.2、加密消息2.3、解密消息 三、Python实现RSA算法3.1、基于pycryptodome库实现RSA加解密3.2、基于rsa库实现RSA加解密 四、参考文献 一、基本背景 RSA算法是是由罗纳德李维斯特&#xff08;Ron Rives…

RSA加密和解密原理及过程(非对称加密)

非对称加密 用公钥来加密数据发送出去&#xff0c;接收方收到数据后用私钥解密数据。公钥是所有人都知道的&#xff0c;私钥只有接收方才知道。 加密解密基本流程 注意&#xff1a;公钥私钥中的33是同一个数字&#xff0c;是公开的&#xff0c;只有私钥的3是只有接收方才知道…

关于RSA加密解密原理

前言&#xff1a; 随着我们的学习的不断深入&#xff0c;信息的安全也愈加重要&#xff0c;我们发布的代码中可能含有我们的私密信息&#xff0c;比如对接支付宝沙箱api&#xff0c;下载一些专业软件时就需要我们输入公钥和私钥以此来验证我们的身份信息&#xff0c;就相当于用…

RSA加密解密原理及工具类

1. 什么是RSA RSA算法是现今使用最广泛的公钥密码算法&#xff0c;也是号称地球上最安全的加密算法。 RSA是被研究得最广泛的公钥算法&#xff0c;从提出到现在已近三十年&#xff0c;经历了各种攻击的考验&#xff0c;逐渐为人们接受&#xff0c;普遍认为是目前最优秀的公钥…

RSA 非对称加密原理(小白也能看懂哦~)

RSA 加密原理 步骤说明描述备注1找出质数P 、Q-2计算公共模数N P * Q-3欧拉函数φ(N) (P-1)(Q-1)-4计算公钥E1 < E < φ(N)E的取值必须是整数 E 和 φ(N) 必须是互质数5计算私钥DE * D % φ(N) 1-6加密C &#xff1d; M E mod NC&#xff1a;密文 M&#xff1a;明文7…

RSA加密的原理——为什么被公钥加密的可以被私钥解密?

RSA加密的原理——为什么被公钥加密的可以被私钥解密&#xff1f; 目录 一&#xff0c;RSA 数学理论基础 二&#xff0c;RSA实现原理 三&#xff0c;RSA加密的过程 四&#xff0c;参考文献 引言 在密码学最开始&#xff0c;都是使用的普通加密模式 A 用加密规则加密了字符串m…

关于RSA加密原理

什么是RSA RSA算法是现今使用最广泛的公钥密码算法&#xff0c;也是号称地球上最安全的加密算法。在了解RSA算法之前&#xff0c;先熟悉下几个术语 根据密钥的使用方法&#xff0c;可以将密码分为对称密码和公钥密码 对称密码&#xff1a;加密和解密使用同一种密钥的方式 公钥密…