首页 > 其他分享 >字符数组练习

字符数组练习

时间:2024-09-10 08:54:11浏览次数:10  
标签:字符 int 练习 char 数组 字符串 include 赋值

下列对 C 语言字符数组的描述中错误的是 ( ) (鲁科安全)

A. 字符数组可以存放字符串

B. 字符数组中的字符串可以整体输入、输出

C. 不可以用关系运算符对字符数组中的字符串进行比较

D. 可以在赋值语句中通过赋值运算符 "=" 对字符数组整体赋值

分析:字符数组不能通过赋值运算符“=”进行赋值,需要使用函数strcpy

下列描述中不正确的是( )(华三外协)

A.字符型数组中可以存放字符串

B.可以对字符型数组进行整体输入、输出

C.可以对整型数组进行整体输入、输出

D.不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值

分析:对整型数组进行整体输入、输出需要循环

下列代码片段执行的结果是: (云尖软件开发)

char szTest[] = "ABCDEF";

strncpy(szTest, szTest, 4); //字符串数组没有遇见'\0'是不会结束的

printf("%s", szTest);

  1. ABCD          B. ABCDE                 C. ABCDEF                D. 以上都不对

以下对字符数组test 赋值方式错误的是( )。 (智洋)

A. char test[10]; strcpy(test, "test");

B. char test[10]; test="test";

C. char test[]={'t', 'e', 's', 't’};

D. char test[10]={'t', 'e', 's', ‘t’};

分析:字符串不能使用'='进行赋值

以下语句不能正确赋值的是( ) (杭州快越科技, 神州安付)

A. char *s = "China";

B. char s3[20] = "China";

C. char s2[]={'C', 'h', 'i', 'n', 'a'};

D. char s1[10]; s1="China";

分析:字符串不能使用'='进行赋值

以下程序运行后输出结果是( ) (杭州快越科技)

main()

{

    char ch[2][5] = {"693", "825"}, p[2][5];

    int i, j, s = 0;

    for(i=0;i<2;i++) p[i]=ch[i];

   

    for(i=0;i<2;i++)

    for(j=0;p[i][j]>='0' && p[i][j]<='9';j+=2)

s=10*s+p[i][j]-'0';   6 3 8 5

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

}

  1. 6385   B. 33        C. 693825        D. 22

为了比较两个字符串s1和s2是否相等,应当使用( ) (杭州快越科技)

A. if(s1 = s2)                                       B. if(s1==s2)

C. if(strcmp(&s1, &s2)==0)             D. if(strcmp(s1, s2)==0)

分析:strcmp函数比较字符串

编写一个程序。输入一个字符串,将其逆序后输出?(电工时代)

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main(int argc, const char *argv[])

{

char a[100];    //定义一个字符串数组

printf(" 请输入字符串: ");

scanf("%s",a);

int i=0,j=strlen(a)-1;        //分别在数组头部和尾部定义一个变量

printf("%d\n",j);

while(i<j){                    //进行头尾交换

          char t = a[i];

                   a[i] = a[j];

                   a[j] = t;

                   i++;

                   j--;

}

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

return 0;

}

编写一个程序。负责将一个字符串拷贝到另一个字符串,不调用 C++/C 的字符串库函数。(电工时代,泰华智慧,智洋,中安云科,北京拓普空间科技,登虹科技,杭州快越科技,鲁科安全)

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main(int argc, const char *argv[])

{   //如果要将b字符串复制到a字符串

   char a[100],b[100];

   scanf("%s %s",a,b); //输入俩个字符串

   int i=0,j=0;

   while(b[j]!='\0'){        //如果b字符串没有到尾,将b赋值给a

           a[i] = b[j];

           i++;

           j++;

   }

   a[i] = '\0';        //在a字符串最后加入结束符

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

   return 0;

}

编写一个程序。不使用字符串连接函数strcat,实现两个字符串的链接 (若临视讯,福建新大陆) 

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main(int argc, const char *argv[])

{

      char a[100],b[100];

      printf("请输入两个字符串:");

      scanf("%s %s",a,b);

      int i=0, j=0;

      while(a[i]!='\0'){

         i++;

      }

      while(b[j]!='\0'){

         a[i] = b[j];

         i++;

         j++;

      }

      a[i] = '\0';

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

      return 0;

}

编写一个程序。请实现输入一个字符串,这个字符串字符串包含一个或多个数字,把这些数字字符转换为整数,如果字符串参数包含了非数字字符,置零,不必担心算数溢出。(泰华智慧,紫光云数,H3C,拓仓科技)

输入:123abc456

输出:printf(“%d\n” , num);  num=123000456

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main(int argc, const char *argv[])

{

char a[100];

int sum=0;

printf("请输入一段字符串包含很多个数字和非字符串:\n");

scanf("%s",a);

int i;

for(i=0;i<strlen(a);i++){

          if(a[i]>='0'&&a[i]<='9'){

                   sum =sum*10+a[i]-48;

          }else{

                   sum*=10;

          }

}

printf("%d\n",sum);

return 0;

}

编写一个程序。实现输入N个字符串,输出这N个字符串中的最大字符串和最长字符串,可以调用字符串处理函数。

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main(int argc, const char *argv[])

{

   int N;

   printf("请输入个数组");

   scanf("%d",&N);



   char a[N][100];

   for(int i=0;i<N;i++){

           scanf("%s",a[i]);

   }

   char max[100],len[100];

           strcpy(max,a[0]);

           strcpy(len,a[0]);

   for(int i=1 ;i<N ;i++){

           if(strcmp(max,a[i])<0){

                    strcpy(max,a[i]);

                            

           }

           if(strlen(len)<strlen(a[i])){

                   

                    strcpy(len,a[i]);

           }

   }

   printf("最大的数组是:%s\n最长的数组是:%s\n",max,len);

   return 0;

}

标签:字符,int,练习,char,数组,字符串,include,赋值
From: https://blog.csdn.net/qq_53841892/article/details/141968662

相关文章

  • C10-04-1-历史漏洞环境搭建和练习
    一、TomcatPUT方法任意写文件漏洞(CVE-2017-12615)1.1漏洞原理ApacheTomcat7.0.0版本至7.0.79版本存在远程代码执行漏洞。当上述版本的Tomcat启用HTTPPUT请求方法时,远程攻击者可以构造恶意请求利用该漏洞向服务器上传包含任意代码执行的jsp文件,并被服务器执行该文件,导致......
  • 数组与贪心算法——179、56、57、228(2简2中)
    179.最大数(简单)给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。解法一、自定义比较器大的排前面然后进行一个比较jpg一开始想的其实是字典序,但是测试里就败了。例如3,3......
  • 数组与贪心算法——452、435、646、406、169(1简4中)
    452.用最少数量的箭引爆气球(中等)有一些球形气球贴在一堵用XY平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中points[i]=[xstart,xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切y坐标。一支弓箭可以沿着x轴从不同点 完全......
  • 1170. 比较字符串最小字母出现频次
    题目链接1170.比较字符串最小字母出现频次思路题意不易理解;排序+二分(upper_bound)题解链接Python简洁解法关键点预先处理words时间复杂度\(O((n+m)p)\)空间复杂度\(O(1)\)代码实现:classSolution:defnumSmallerByFrequency(self,queries:L......
  • 练习 day2
    name=input('输入姓名')ifname=='kk':print('hellokk')ifname=='k':print('hik')name=input('输入姓名')ifname=='kk':print('hellokk')else:print('fxxk')gif......
  • C语言程序设计-练习篇
    不知道结果仍义无反顾地才是勇士。三,打印整数二进制的奇数位和偶数位题目内容:获取一个整数二进制序列中所有的奇数位和偶数位,分别打印出二进制序列#include<stdio.h>//打印整数二进制的奇数位和偶数位intmain(){ inti=0; intnum=0; scanf("%d",&num); //......
  • C语言中数组的知识(后面有三子棋小游戏)
    一、数组的创建和初始化    数组是一组同类型元素的集合,合理运用数组可以帮我们完成一些复杂的操作    1.1一维数组的创建和初始化    一维数组创建的方式:type_tarr_name[const_n];//type_t是指数组的元素类型//const_n是一个常量表达式,用......
  • 1385. 两个数组间的距离值
    题目链接1385.两个数组间的距离值思路二分查找题解链接官方题解关键点标准库的利用;二分循环不变式(开区间):nums[left]<target&&nums[right]>=target时间复杂度\(O((n+m)\logm)\)空间复杂度\(O(1)\)代码实现:classSolution:deffindTheD......
  • LeetCode题集-3 - 无重复字符的最长子串
    题目:给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。我们先来好好理解题目,示例1中怎么得到长度为3的?如果以第一个字符a为起始,不含重复的最长子串是abc;则我们这样表示(a)bcabcbb->(abc)abcbb,如此表达枚举出所有可能的情况如下:1.(a)bcabcbb->(abc)abcbb;2.a......
  • 每日OJ_牛客_单词倒排(字符串模拟)
    目录牛客_单词倒排(字符串模拟)解析代码牛客_单词倒排(字符串模拟)单词倒排__牛客网时间限制:C/C++1秒,其他语言2秒空间限制:C/C++32M,其他语言64M题目描述:对字符串中的所有单词进行倒排。说明:1、构成单词的字符只有26个大写或小写英文字母;2、非构成单词的字符均视为单词......