C基础day7

一、思维导图

二、课后练习

1、提示并输入一个字符串,统计该字符串中字母、数字、空格以及其他字符的个数

#include<myhead.h>
#define M 20
int main(int argc, const char *argv[])
{int sum_a=0,sum_b=0,sum_c=0,sum_d=0;char str[M];printf("please enter string:");gets(str);
//	getchar(); 	//吸收垃圾字符//循环判断每个字符for(int i=0;str[i]!='\0';i++){//字母if((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z'))sum_a++;//数字else if(str[i]>='0'&&str[i]<='9')sum_b++;//空格else if(str[i] == ' ')sum_c++;//其他elsesum_d++;}//输出累计数量printf("字符串中有:字母%d个,数字%d个,空格%d个,其他字符%d个\n",sum_a,sum_b,sum_c,sum_d);return 0;
}

2、提示并输入一个字符串,求出该字符串中所有数字的总和

#include<myhead.h>
#define M 20
int main(int argc, const char *argv[])
{int sum = 0;char str[M];printf("please enter string:");gets(str);//循环判断数字并求和for(int i=0;str[i]!='\0';i++){if(str[i]>='0' && str[i]<='9')sum += str[i] -'0';}//输出数字总和printf("字符串中数字的总和为:%d\n",sum);return 0;
}

3、定义一个4*3的二维整形数组,完成对二维数组的输入、输出。并将该二维数组中每一行的最值放入到一个一维数组中,并对该一维数组进行升序排序后输出。

#include<myhead.h>
int main(int argc, const char *argv[])
{int arr[4][3]={0};//二维数组输入for(int i=0;i<4;i++){for(int j=0;j<3;j++){printf("请输入%d行%d列:",i+1,j+1);scanf("%d",&arr[i][j]);}putchar(10);}//二维数组输出for(int i=0;i<4;i++){for(int j=0;j<3;j++){printf("%d行%d列:%d\n",i+1,j+1,arr[i][j]);}putchar(10);}//定义一维数组存放二维数组每一行最大值int brr[4]={0};//循环二维数组比较选出每一行最大值for(int i=0;i<4;i++){int max = arr[i][0];for(int j=1;j<3;j++){if(max<arr[i][j])max = arr[i][j];}brr[i] = max; 	//将每行最大值存入数组brr}//对一维数组进行升序排序//冒泡排序for(int i=1;i<4;i++){for(int j=0;j<4-i;j++){if(brr[j]>brr[j+1]){int temp = brr[j];brr[j] = brr[j+1];brr[j+1] = temp;}}}printf("冒泡排序升序排序后的结果:");//循环输出for(int i=0;i<4;i++){printf("%d\t",brr[i]);}putchar(10);//选择排序int mini = 0;  //记录最值的下标for(int i=0;i<4;i++) 	//遍历整个数组找最值{mini = i;//遍历整个数组比较for(int j=i+1;j<4;j++){if(brr[mini] > brr[j]){mini =j; //更新最值下标}}//判断找到的最值是否放在了首位,不是则交换if(mini !=i){int temp = brr[i];brr[i] = brr[mini];brr[mini] = temp;}}//输出一位数组排序后结果printf("选择排序升序排序后的结果:");//循环输出for(int i=0;i<4;i++){printf("%d\t",brr[i]);}putchar(10);return 0;
}

4、提示并输入两个一维整形数组,求这两个数组的交集。

#include<myhead.h>
#define MAX 100
int main(int argc, const char *argv[])
{//提示并输入两个一维数组int arr1[MAX],arr2[MAX];int size1=0,size2=0;printf("please enter arr1 size1:");scanf("%d",&size1);printf("please enter arrry1:\n");for(int i=0;i<size1;++i){printf("请输入第个%d元素:",i+1);scanf("%d",&arr1[i]);getchar();}printf("please enter arr2 size2:\n");scanf("%d",&size2);printf("please enter arrry2:");for(int i=0;i<size2;++i){printf("请输入第个%d元素:",i+1);scanf("%d",&arr2[i]);getchar();}//遍历两个数组比较得出交集//定义一位数组存储交集int brr[MAX];int k =0;for(int i=0;i<size1;i++){for(int j=0;j<size2;j++){if(arr1[i] == arr2[j]){brr[k] = arr1[i];k++;}}}//输出交集数组brrprintf("两数组交集为:");for(int i=0;i<k;i++){printf("%d\t",brr[i]);}return 0;
}

5、完成注册和登录功能:

#include<myhead.h>void regis();
int login();char old_user[32];
char old_passwd[32];
char new_user[32];
char new_passwd[32];int main(int argc, char const *argv[])
{int a,res;while(1){ //循环执行printf("***********");printf("1.注册 2.登录");printf("***********\n");scanf("%d",&a);switch(a){case 1:regis();break;case 2:while (1){res = login();if (res==1){return 0;}else{printf("请重新输入\n");}}  break;default:break;}}return 0;
}void regis(){printf("请输入注册帐号\n");scanf("%s",old_user);printf("请输入注册密码\n");scanf("%s",old_passwd);
}
int login(){printf("请输入登录帐号\n");scanf("%s",new_user);printf("请输入登录密码\n");scanf("%s",new_passwd);if (strcmp(old_user,new_user) == 0 && strcmp(old_passwd,new_passwd) == 0){printf("登录成功\n");return 1;}else{return -1;}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/43809.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鼠标点击触发-----以控制开灯、宝箱触发为例

开灯 当点击时触发开灯效果 &#xff08;不用设置触发器&#xff09; using System.Collections; using System.Collections.Generic; using UnityEngine;public class OpenLight : MonoBehaviour {public Transform light;bool isOpen;private void OnMouseDown(){if (!isOpe…

Hospital Management Startup 1.0 SQL 注入漏洞(CVE-2022-23366)

前言 CVE-2022-23366是一个影响HMS v1.0的SQL注入漏洞。该漏洞存在于patientlogin.php文件中&#xff0c;允许攻击者通过特定的SQL注入来获取或修改数据库中的敏感信息。 具体来说&#xff0c;攻击者可以通过向patientlogin.php发送恶意构造的SQL语句来绕过身份验证&#xff…

Joblib 是一个专注于高效计算和数据持久化的 Python 库

目录 01Joblib 是什么&#xff1f; 为什么选择 Joblib&#xff1f; 安装与配置 02Joblib 的基本用法 并行计算 数据持久化 03实战案例 项目简介 项目结构 依赖安装 应用代码 运行应用 …

FunAudioLLM SenseVoice语音转录与CosyVoice语音合成及语音克隆使用案例

参考: https://fun-audio-llm.github.io/ 1、SenseVoice语音转录 在线体验:https://modelscope.cn/studios/iic/CosyVoice-300M 参考:https://github.com/FunAudioLLM/SenseVoice 下载: pip install -U funasr使用: from funasr import AutoModelmodel_dir = "…

怎么将几首音乐合并在一起?这四种合并方法大家都在用!

怎么将几首音乐合并在一起&#xff1f;在音乐的海洋中遨游时&#xff0c;我们是否曾被音乐的海洋所淹没&#xff1f;在享受旋律的流转中&#xff0c;我们是否频繁地在不同的曲目间穿梭&#xff0c;仿佛迷失在无尽的音符之中&#xff1f;但音乐数量的繁多&#xff0c;不仅带来了…

单对以太网连接器多场景应用

单对以太网连接器应用场景概述 单对以太网&#xff08;Single Pair Ethernet&#xff0c;简称SPE&#xff09;作为一种新兴的以太网技术&#xff0c;以其独特的优势在多个领域得到了广泛的应用。SPE通过单对电缆进行数据传输&#xff0c;支持高速数据传输&#xff0c;同时还能…

pdf容量大小怎么改,pdf容量太大怎么变小

在数字化时代&#xff0c;pdf文件因其稳定性和跨平台兼容性而成为工作、学习和生活中不可或缺的文件格式。然而&#xff0c;随着文件内容的丰富&#xff0c;pdf文件的体积也日益增大&#xff0c;给存储和传输带来了不少困扰。本文将为你详细介绍多种实用的pdf文件压缩方法&…

基于STM32的智能加湿器

1.简介 基于STM32的加湿器发展前景非常乐观&#xff0c;这主要得益于其在技术、市场需求、应用场景以及政策支持等多方面的优势。STM32微控制器具备强大的处理能力和丰富的外设接口&#xff0c;能够实现精确的湿度监测和智能化控制。基于STM32的加湿器可以根据环境湿度自动调节…

光学传感器图像处理流程(一)

光学传感器图像处理流程&#xff08;一&#xff09; 1. 处理流程总览2. 详细处理流程2.1. 图像预处理2.1.1. 降噪处理2.1.2. 薄云处理2.1.3. 阴影处理 2.2. 辐射校正2.2.1. 辐射定标2.2.2. 大气校正2.2.3. 地形校正 2.3. 几何校正2.3.1. 图像配准2.3.2. 几何粗校正2.3.3. 几何精…

7.9总结

容易推出当移动i与j时等价于j-i-1个左右交换&#xff0c;且每次交换逆序数的奇偶改变&#xff08;无相同元素&#xff09;&#xff0c;假设有一个状态c&#xff0c;且a与b必须以等量的左右交换转移为c&#xff0c;则必须数量相同&#xff0c;元素相同&#xff08;使用异或解决&…

如何忽略部分文件或者文件夹在git提交项目时

嗨&#xff0c;我是兰若&#xff0c;最近发现有些小伙伴在提交代码时&#xff0c;总是把不该提交的文件&#xff0c;比如说本地批跑的缓存文件给提交到了git上面&#xff0c;导致别人在拉取代码的时候&#xff0c;也会把这部分文件拉取到自己本地&#xff0c;从而导致和本地的缓…

Debezium报错处理系列之第114篇:No TableMapEventData has been found for table id:256.

Debezium报错处理系列之第114篇:Caused by: com.github.shyiko.mysql.binlog.event.deserialization.MissingTableMapEventException: No TableMapEventData has been found for table id:256. Usually that means that you have started reading binary log within the logic…

如何借助社交媒体影响者的力量,让品牌影响力倍增?

一、引言&#xff1a;为何社交媒体影响者如此关键&#xff1f; 在信息爆炸的今天&#xff0c;社交媒体已成为塑造消费者行为与品牌认知的重要渠道。社交媒体影响者&#xff0c;凭借其在特定领域的专业知识、庞大的粉丝基础及高度的互动性&#xff0c;成为了品牌传播不可忽视的…

kafka 消费者

消费者 消费者。消费者连接到Kafka上并接收消息&#xff0c;进而进行相应的业务逻辑处理。 消费组 消费者负责订阅Kafka中的主题&#xff0c;并且从订阅的主题上拉取消息。 消费组&#xff1a;每个消费者都有一个对应的消费组&#xff0c;每一个分区只能被一个消费组中的一个…

方法引用 异常 file

目录 一.方法引用 1.方法引用概述 2.引用静态方法 3.引用成员方法 i.引用其他成员方法 ii.引用本类成员方法 iii.引用父类成员方法 4.引用构造方法 5.其他调用方式 i.使用类名引用成员方法 ii.引用数组的构造方法 二、异常 1.异常的作用 2.异常的处理方式 i.JVM…

6.Python学习:异常和日志

1.异常的抓取 1.1异常的概念 使用异常前&#xff1a; print(1/0)使用异常后&#xff1a;错误提示更加友好&#xff0c;不影响程序继续往下运行 try:print(10/0) except ZeroDivisionError:print("0不能作为分母")1.2异常的抓取 第一种&#xff1a;如果提前知道可…

2020 ICPC Shanghai Site B. Mine Sweeper II 题解 构造 鸽巢原理

Mine Sweeper II 题目描述 A mine-sweeper map X X X can be expressed as an n m n\times m nm grid. Each cell of the grid is either a mine cell or a non-mine cell. A mine cell has no number on it. Each non-mine cell has a number representing the number of…

遍历请求后端数据引出的数组forEach异步操作的坑

有一个列表数据&#xff0c;每项数据里有一个额外的字段需要去调另外一个接口才能拿到&#xff0c;后端有现有的这2个接口&#xff0c;现在临时需要前端显示出来&#xff0c;所以这里需要前端先去调列表数据的接口拿到列表数据&#xff0c;然后再遍历请求另外一个接口去拿到对应…

生产环境中秒杀接口并发量剧增与负载优化策略探讨

✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心哦&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; 目录 引言 1. 实施限流措施 1.1 令牌桶算法&#xff1a; 1.2 漏…

红酒知识百科:从入门到精通

红酒&#xff0c;这个深邃而迷人的世界&#xff0c;充满了无尽的知识与奥秘。从葡萄的选择、酿造工艺&#xff0c;到品鉴技巧&#xff0c;每一步都蕴藏着深厚的文化底蕴和精细的技艺。今天&#xff0c;就让我们一起踏上这场红酒知识之旅&#xff0c;从入门开始&#xff0c;逐步…