数组和字符串简单练习

C语言·数组的简单练习·字符串个数统计 ** C语言·数组的简单练习·字符串个数统计 ** //字符串个数统计// #include<stdio.h> int main() { char cString[100]; int iNum1=0,iNum2=0,iNum3=0; int i; gets(cString); for(i = 0;cString[i] != '!';i++) { if(cString[i]>='0'&&cString[i]<='9') { iNum1++; 阅读详情

在c语言中,字符串不是基本的数据类型,而是以空字符(\0)结尾的char数组。

1.倒置一个int数组

int main(void)
{
    int array[] = {23, 53, 53, 23, 231, 97, 234};
    int i = 0;

    int min = 0;
    int max = sizeof(array) / sizeof(int) - 1;

    while(min < max)
    {   
        int tmp = array[min];
        array[min] = array[max];
        array[max] = tmp;

        min ++; 
        max --; 
    }   

    for (i = 0; i < (sizeof(array)/sizeof(int)); i++)    {
        printf("%d\n", array[i]);
    }       

    return 0;
}

2.求一个数组中最大和第二大的数

int main(void)
{   
    int i = 0;
    int array[7] = {23, 53, 53, 23, 231, 97, 234};

    int max = 0;
    int smax = 0;

    if (array[1] > array[0])
    {
        max = array[1];
        smax = array[0];
    }
    else
    {
        max = array[0];
        smax = array[1];
    }

    for (i = 2; i < 7; i++)
    {
        if (max < array[i])
        {
            smax = max;
            max = array[i];
        }
        else if (array[i] < max && array[i] > smax)
        {
            smax = array[i];
        }
    }

    printf("smax = %d\n", smax);
    printf("max = %d\n", max);

    return 0;
}

3.中文汉字倒置

windows平台上字符集是gbk,一个汉字占两个字节。如果是在Linux平台上,字符集是utf8,一个汉字占三个字节。

int main(void)
{
    char a[] = "你好世界";
    int length = 0;

    while(a[length])
    {
        length++;
    }
    int min = 0;
    int max = length - 1;

    while(min < max)
    {
        char tmp = a[min];
        a[min] = a[max - 1];
        a[max - 1] = tmp;

        tmp = a[min+1];
        a[min+1] = a[max];
        a[max] = tmp;

        max -= 2;
        min += 2;
    }

    printf("%s\n", a);

    return 0;
}

4.求字符串中中文和英文字符的个数

int main(void)
{
    char a[] = "你dsf好知了sdf世界d";
    int length = 0;
    int num = 0;
    int c_num = 0;

    while(a[length])
    {
       if (a[length] < 0)
       {
           num ++;
           length += 2;
       }
       else
       {
           c_num++;
           length++;
       }
    }

    printf("num = %d, length = %d, c_num = %d\n", num ,length, c_num);

    return 0;
}

5.冒泡排序

#include <stdio.h>

int main(void)
{
    int i = 0 , j = 0;
    int array[10];

    for (i = 0; i < 10; i++)
    {   
        scanf("%d", &array[i]);
    }   

    for (i = 0; i < 10; i++)
    {   
        for (j = 1; j < 10 - i; j++)
        {   
            if (array[j-1] > array[j] )
            {   
                int tmp = array[j-1];
                array[j-1] = array[j];
                array[j] = tmp;
            }   
        }   
    }   

    printf("------------------------------\n");

    for (i = 0; i < 10; i++)
    {   
        printf("%d\n", array[i]);
    }   

    return 0;
}

6.选择排序

#include <stdio.h>

int main(void)
{
    int i = 0 , j = 0;
    int array[10];

    for (i = 0; i < 10; i++)
    {   
        scanf("%d", &array[i]);
    }   

    for (i = 0; i < 10; i++)
    {   
        for (j = i + 1; j < 10; j++)
        {   
            if (array[i] < array[j])
            {   
                int tmp = array[i];
                array[i] = array[j];
                array[j] = tmp;

            }   
        }   
    }   

    printf("------------------------------\n");

    for (i = 0; i < 10; i++)
    {   
        printf("%d\n", array[i]);
    }   

    return 0;
}
C语言数组和字符串练习 Problem A:【二维数组】计算三阶行列式的值 题目描述 输入 输入三阶行列式,共三行三列,每个元素整数值,取值介于[-100,100] 输出 三阶行列式的值 样例输入 1 2 3 0 4 5 0 0 6 样例输出 24 答案 #include <stdio.h> int main(){ int i,a[3][3],j,sum1,sum2,sum; for(i=0... 阅读详情

相关推荐

C语言编程小练习8(数组与字符串)

C语言编程小练习8(数组与字符串) 8.1比较两个字符串大小。 ================================================================ 原来代码如图: 原来只是简单的一个小程序,但在GCC 中编译不能通过,警告如下: 查阅C相关函数库得知原因:”由于gets()无法知道字符串的大小,必须遇到换行字符或文件尾才会...

sunshineddMMZ的博客 3530

C++语言篇 字符串及字符数组练习

string 的应用举例 1、读程序,写结果: #include &lt;bits/stdc++.h&gt; using namespace std; int main(){ //1.string类重载运算符operator&gt;&gt;用于输入, //同样重载运算符operator&lt;&lt;用于输出操作 string str1; ...

流年的博客 9598

C语言的数组与字符串练习题2

数组与字符串

HW-BASE的博客 1152

数组字符串小练习

JS中数组和字符串结合的小练习

da_shuai_bi_a的博客 167

C语言的数组与字符串练习题3

数组与字符串

HW-BASE的博客 611

C++Primer第五版 第3章 字符串变量和数组(练习解答)

C++Primer第五版 第3章 字符串变量和数组(练习解答)包括课后各小节的解答,习题加源码,仅供学习参考,遗漏之处参考我的博客,赚点辛苦分1分,谢谢

字符数组及其练习

【代码】字符数组及其练习。

Jk586的博客 199

当windows安装git时出现以下错误提示

Windows安装Git时出现多个系统配置设置失败错误(exit code 4294967295),提示包括无法设置textconv、LFS过滤器和SSL等配置项。关键问题在于scalar.exe版本不兼容,系统提示"该版本的scalar.exe与你运行的Windows版本不兼容"。解决方案是检查程序版本是否正确,下载与Windows系统兼容的正确版本重新安装即可。

沧澜的博客 1876

数组与字符串的习题

WERTYU 常量数组:并不需要指明大小,编译器可以完成计算 回文词 使用常量数组 不会输入空格,可以安全的使用scanf isalpha, idigit, isprint...在ctype.h中定义,toupper, tolower等工具可以用来转换大小写。 猜数字游戏 scanf("%d",&a[i]); 生成元   x+x的各个数字之和得到...

weixin_34318272的博客 189

STM32F4_DHT11数字温湿度传感器

开机的时候先检测是否有DHT11存在,如果没有,则提示错误。DHT11和DS18B20相同,传感器输出的都是未编码的二进制数字。本节我们将利用STM32F4来读取DHT11的温湿度传感器,获取环境的温度和湿度值。因此:温湿度的读取方式就是整数部分的二进制转换成十进制放在整数部分;小数部分的二进制转换成十进制放在小数部分。DHT11和MCU的一次通讯时间最大3ms,主机连续向DHT11采样的间隔建议不小于100ms。DHT11是广州奥松有限公司生产的一款温湿度一体化的数字传感器。数据分小数部分和整数部分。

light_2025的博客 3432

TLSR8258蓝牙Mesh实战:从SDK下载到自定义通信指令全流程(附避坑指南)

本文详细介绍了TLSR8258蓝牙Mesh开发的完整流程,从SDK下载、环境搭建到自定义通信指令的实现。通过实战案例和避坑指南,帮助开发者快速掌握低功耗蓝牙Mesh网络构建技巧,适用于智能家居、工业监控等物联网场景。

weixin_29176179的博客 200

数组和字符串方法及练习题

文章目录一. 创建数组的两种方式二.检测变量是否为数组三.数组方法toString()join()concat()push()unshift()pop()shift()reverse()sort()splice()indexOf()lastIndexOf()四.常见关于数组的题目1、改变原数组的方法?(7个)2、`pop()` `push()` `shift()` `unshift()`的作用以及区别?3、数组去重 一. 创建数组的两种方式 1.字面量方式 var arr = [1,"test",tru

人俗话不多 1355

山东大学软件工程应用与实践——GMSSL开源库(六)——SM9密钥交换协议

2021SC@SDUSC 文章目录基本概念符号及辅助算法SM9密钥交换协议 基本概念 1976年,Diffie和Hellman在其题为《密码学的新方向》的论文中首次给出了公钥密码学的定义,并提出了Diffie-Hellman密钥交换算法。该算法解决了对称密码体制中的密钥分发问题,使得通信双方可以通过公开信道安全地交换共享密钥。 使用SM9通信的双方通过对方的标识和自身的私钥,经过两次或者可选的三次信息传递过程,计算获取一个由双方共同决定的共享秘密密钥。该密钥可以作为对称密码算法的会话密钥,其中可选步骤用来实

m0_51588039的博客 1988

python 字符串与数组互转

1、str -&gt; array arr = strval.split('') 2、array -&gt; strstrval = ''.join(arr)

u012329294的专栏 1万+

Gemini-CLI 登录失败?解决报错 This account requires setting the GOOGLE_CLOUD_PROJECT env var 的问题

🚀 刚装好 `gemini-cli` 就遇到登录拦路虎?别慌!本文带你深入解析 `GOOGLE_CLOUD_PROJECT` 环境变量错误的根源,并提供超详细的图文解决方案,让你丝滑开启 AI 命令行之旅!快来抄作业!✍️

XiaoqiangClub的博客 5141

【头歌】链栈的基本操作及应用

另外,在算法的开始和结束时,栈都应该是空的,所以匹配到最后还要判断栈是否为空,若空,则说明匹配成功,返回1。其中表达式只包含三种括号,花括号{}、中括号[]、圆括号(),即它仅由 (、)、[、]、{、}六个字符组成。预期输出: 栈中元素依次为:12 47 5 8 6 92 45 63 75 38 4 29 弹出的栈顶元素 e=29 栈空否:0(1:空 0:否) 栈顶元素 e=4 栈的长度为11 清空栈后,栈空否:1(1:空 0:否)// 若栈不空,则用e返回S的栈顶元素,并返回OK;

qq_39977056的博客 4384

[C语言]课堂小练习

第一个练习是计算阶乘的: int main() { int i = 0; int ret = 1; int n = 0; while (1) { scanf("%d", &n); if (0 == n) { printf("退出程序\n"); break; } for (i = 1,ret = 1; i <= n; i++) { ret *= i; } printf("%d的阶乘是:%d\n", n, ret); } retu

milkhuman的博客 575

RK356x U-Boot研究所(命令篇)3.7 pci与nvme命令的用法

RK356x U-Boot研究所(命令篇)3.7 pci与nvme命令的用法

Systemcall名屋 2084

字符串和字符串数组

文章目录字符串字符串输出字符串常用方法计算字符串的长度字符串拼接字符串拷贝字符串比较字符串数组 字符串 用双引号引起来的就是字符串,字符串由字符组成 字符串使用%s格式化输出 字符串以\0结尾,没有\0就不是字符串 只要是用双引号括起来的都是字符串 字符串的本质就是数组 注意: 字符串变量和普通的字符数组有一定的区别,C语言规定,字符串必须以\0结尾(作为字符串的结束符号),所以字符串变量的元素...

张聪的博客 11万+

多思计组实验实验三、存储器读写实验

实验三、存储器读写实验

qq_53089329的博客 3653

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

[C语言]数组和字符串

Array and String

qq_66767938的博客 4772

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Java数组和字符串

介绍Java数组和字符串的定义和使用。目录前言一、数组(一)、数组概述(二)、数组的使用1.数组的声明和初始化(1)、静态初始化(2)、动态初始化(3)、数组默认初始化值2. 数组的长度3.数组元素访问和遍历数组4.数组的扩容与拷贝(三)、二维数组(四)、数组工具类1.boolean equals(数组1,数组2)2.String toString(数组)3.void fill(数组,值)4.void sort(数组)5.int binarySearch(数组,值)二、字符串(一)、字符串概述。

bala_jiang的博客 3694

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

C++ Primer学习练习——第三章 字符串、向量和数组

字符串、向量和数组

weixin_43488529的博客 1115

数组小练习

学习js,数组题目习小练习

奋斗的小前端 1035

java 字符数组与字符串_用于字符串和数组的5种简单有效的Java技术

java 字符数组与字符串 Java通常会排在前五种最流行的编程语言中,因此可以理解。 它是一种通用语言,非常容易学习,因为它是一种高级语言,并且可以满足许多用例。 由于这些原因,Java是一门很棒的语言,可以用来学习您是否有经验,还是刚开始您的软件工程生涯。 Java可能是一种相对容易学习的语言,但这并不意味着我们不会时有问题,不会陷入困境,也不会忘记该语言的细微差别。 这篇文章的目的是...

最佳 Java 编程 6731

用Java语言简单做几个数组相关的练习题吧

用Java语言简单做几个数组相关的练习题吧

weixin_64308540的博客 1802
上一篇: dup&dup2函数的使用
下一篇: 递归
Linux_forker
博客等级 码龄11年 3粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值