首页 > 其他分享 >实验5 ———

实验5 ———

时间:2023-12-03 17:56:49浏览次数:27  
标签:int s1 else char 实验 str printf

1.1

找到最大值和最小值

数组 x 的第一个元素 x[0] 的值

1.2

最大值所在元素的地址

不,地址不能交换

 

2.1

1__23     sizeof(s1) 计算的是数组 s1 在内存中所占用的字节数 strlen(s1) 统计的是字符串 s1 中的字符数

2__不能    未分配地址

3__能

2.2

1__s1 不再是一个数组,而是一个指向字符的指针 sizeof(s1) 将返回指针的大小 strlen(s1) 统计的是指针 s1 所指向的字符串的长度

2__能

2__地址中的内容

 

 

 

test4

#include <stdio.h>
#define N 80
void str_trunc(char* str, char x);
int main() {
    char str[N];
    char ch;
    printf("输入字符串: ");
    gets(str);
    printf("输入一个字符: ");
    ch = getchar();
    printf("截断处理...\n");
    str_trunc(str, ch);
    printf("截断处理后的字符串: %s\n", str);
}
void str_trunc(char* str, char x) {
    int  qwe = 0;
    while (*str!='\0') {
        if (*str == x) {
            
            qwe = 1;
        }
        if (qwe == 1) {
            *str = '\0';
        }
        
        str++;
        
    }
    
}

 

 

 

 

test 6

#include <stdio.h>
#include <string.h>
#define N 5
int check_id(char* str); // 函数声明
int main()
{
    char* pid[N] = { "31010120000721656X",
    "330106199609203301",
    "53010220051126571",
    "510104199211197977",
    "53010220051126133Y" };
    int i;
    for (i = 0; i < N; ++i)
        if (check_id(pid[i])) // 函数调用
            printf("%s\tTrue\n", pid[i]);
        else
            printf("%s\tFalse\n", pid[i]);
    return 0;
}
int check_id(char* str) {
    int length = 0;
    while (*str != '\0') {
        length++;
        str++;
    }
    if (length != 18) {
        return 0;
    }
    str--;
    
    while (length>0) {
        if (!((*str>='0' && *str <= '9') || *str == 'X')) {
            return 0;

        }
        str--;
        length--;

    }
    return 1;


}

 

 

 

test 7

 

#include <stdio.h>
#define N 80
void encoder(char* str); 
void decoder(char* str); 
int main() {
    char words[N];
    printf("输入英文文本: ");
    gets(words);
    printf("编码后的英文文本: ");
    encoder(words); 
    printf("%s\n", words);
    printf("对编码后的英文文本解码: ");
    decoder(words);
    printf("%s\n", words);
    return 0;
}

void encoder(char* str) {
    while (*str) {
        if (*str <= 'z' && *str >= 'a') {
            if (*str == 'z') {
                *str = 'a';
            }
            else {
                *str += 1;
            }

        }
        else if(*str <= 'Z' && *str >= 'A') {
            if (*str == 'Z') {
                *str = 'A';
            }
            else {
                *str += 1;
            }
        }
        str++;
    }
}

void decoder(char* str) {
    while (*str) {
        if (*str <= 'z' && *str >= 'a') {
            if (*str == 'a') {
                *str = 'z';
            }
            else {
                *str -= 1;
            }

        }
        else if (*str <= 'Z' && *str >= 'A') {
            if (*str == 'A') {
                *str = 'Z';
            }
            else {
                *str -= 1;
            }
        }
        str++;
    }











}

 

标签:int,s1,else,char,实验,str,printf
From: https://www.cnblogs.com/lycxt/p/17873489.html

相关文章

  • 实验5
    任务5:1#ifndef__DATE_H__2#define__DATE_H__3classDate{4private:5intyear;6intmonth;7intday;8inttotalDays;9public:10Date(intyear,intmonth,intyear);11......
  • 实验5 继承和多态
    四、实验结论实验任务3pets.hpp#pragmaonce#include<iostream>#include<string>usingnamespacestd;classMachinePets{public:MachinePets(conststring&s="");stringget_nickname()const;public:virtualstringtalk()......
  • 实验5
    #include<iostream>#include<string>usingnamespacestd;classMachinePets{private:stringnickname;public:MachinePets(conststrings):nickname{s}{}stringget_nickname()const{returnnickname;}virtualstringtalk()......
  • 实验五
     找出最大最小值 指向x【0】的地址 返回最大值的地址  sizeof计算数据类型所占据的空间,比如字节长度,而strlen计算字符串的长度,从第一个字符遇到结束符停止。sizeof包含“\0”,strlen则不计算。     #defineN80voidencoder(char*str);//函数声......
  • 百度api实验总结
    通过这次实验还是反映了之前讲到的,修改代码必须要建立在看懂的情况下,同样避免错误也是一样的,刚开始拿到这样一个json返回值的时候很蒙,饭后想到了之前看到的提取其中的值,我就说查一下吧查到了不过是python的不过原理都一样我就说改改吧但是不成功,用为python的json包导进去很简单,直......
  • 实验5
    3.hpp#include<iostream>#include<string>usingnamespacestd;classMachinePets{public:MachinePets(conststrings);MachinePets();stringget_nickname()const;public:virtualstringtalk()=0;protected:......
  • C0P8000计算机组成原理实验系统24位控制位功能
    因为做到了这个课设所以存一下相关内容24位控制位XRD:外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。EMWR:程序存储器EM写信号。EMRD:程序存储器EM读信号。PCOE:将程序计数器PC的值送到地址总线ABUS上。EMEN:将程序存储器EM与数据总线DBUS......
  • 实验五
    任务一publisher.hpp1#pragmaonce23#include<iostream>4#include<string>56usingstd::cout;7usingstd::endl;8usingstd::string;910//发行/出版物类:Publisher(抽象类)11classPublisher{12public:13Publisher(conststr......
  • .Net实验一 语言基础
    一、实验目的熟悉VisualStido.NET实验环境;掌握控制台程序的编写方法;掌握C#程序设计语言的语法基础;掌握控制语句和数组的使用。二、实验要求根据题目要求,编写C#程序,并将程序代码和运行结果写入实验报告。三、实验内容编写一个控制台应用程序,输入三角形或者长方形边长,计......
  • 软件设计实验 24:模板方法模式
      实验24:模板方法模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解模板方法模式的动机,掌握该模式的结构;2、能够利用模板方法模式解决实际问题。 [实验任务一]:数据库连接对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我......