字符数组习题(1)
更新时间:2024-03-01 17:58:01 阅读量: 综合文库 文档下载
字符数组习题
1 9 2 10 3 11 4 12 5 13 6 14 7 15 8 一、单项选择题 1.s12和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是_____
A) if(s1>s2)S; B) if(strcmp(s1,s2))S; C) if(strcmp(s2,s1)>0) S; D) if(strcmp(s1,s2)>0)S; 2.以下定义语句中,错误的是________。
A) int a[]={1,2}; B) char a[]={\C) char s[10]={\ D) int n=5,a[n];
3、当接受用户输入的含有空格的字符串时,应使用______函数。
A) gets( ) B) getchar( ) C) scanf( ) D) printf( ) 4、设有数组定义:char array[]=\则strlen(array)的值为______ 。
A) 4 B) 5 C) 6 D) 7
5、设有数组定义:char array[]=\则数组array所占的存储空间为________。 A) 4个字节 B) 5个字节 C) 6个字节 D) 7个字节 6、设有数组定义:char array[10]= \则数组array所占的存储空间为__ _____。 A) 4个字节 B) 5个字节 C) 6个字节 D) 10个字节 7.有如下程序 main()
{ char ch[80]; int j;long s=0;
printf(\ gets(ch); for(j=0;ch[j]>'\\0';j++) s=10*s+ch[j]-'0'; printf(\ }
如果运行时,从键盘上输入由数字组成的字符串, 该程序的功能是______。
A) 测字符数组ch的长度 B) 将数字字符串ch转换成十进制数 C) 将字符数组中的小写字母转换成大写 D) 将字符数组中的大写字母转换成小写 8.以下程序的输出结果是______。 main()
{ char a[10]={'1','2','3',0,'5','6','7','8','9','\\0'}; printf(\ }
A) 123 B) 1230 C) 123056789 D) 1230567890 9.若有定义语句:char s[100],d[100]; int j=0,i=0; ,且s中已赋字 符串,请在划线处填______以实现将字符串s中的内容拷贝到字符串d
1
中。(注意:不得使用逗号表达式) while(s[i]) { d[j]=__ _______; j++; } d[j]=0;
A) s[i] B) s[++i] C) s[i++] D) s[j] 10.当执行下面的程序时,如果输入ABC,则输出结果是
A) ABC6789 B) ABC67 C) 12345ABC6 D) ABC456789 #include “stdio.h” #include “string.h” main()
{ char ss[10]=“1,2,3,4,5”;
gets(ss); strcat(ss, “6789”); printf(“%s\\n”,ss); }
11.下列程序执行后的输出结果是
A) you&ne B) you C) me D) err mai()
{ char arr[2][4];
strcpy(arr,\); strcpy(arr[1],\); arr[0][3]='&';
printf(\); }
12.执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是 A) 123,456,789 B) 1,456,789 C) 1,23,456,789 D) 1,23,456 main()
{ char s[100]; int c, i;
scanf(\); scanf(\); scanf(\); printf(\); }
13.下列描述中不正确的是
A) 字符型数组中可以存放字符串
B) 可以对字符型数组进行整体输入、输出 C) 可以对整型数组进行整体输入、输出
D) 不能在赋值语句中通过赋值运算符\对字符型数组进行整体赋值 14. 不能把字符串:Hello!赋给数组b的语句是
A) char b[10]={'H','e','l','l','o','!'}; B) char b[10];b=\C) char b[10];strcpy(b,\); D) char b[10]=\15.函数调用:strcat(strcpy(str1,str2),str3)的功能是 A) 将串str1复制到串str2中后再连接到串str3之后 B) 将串str1连接到串str2之后再复制到串str3之后
C) 将串str2复制到串str1中后再将串str3连接到串str1之后 D) 将串str2连接到串str1之后再将串str1复制到串str3中 二、程序分析题
1、分析程序运行的结果 main()
2
{ char ch[80]=\ int j;long s=0; puts(ch);
for(j=0;ch[j]>'\\0';j++)
if(ch[j]>='a'&&ch[j]<='z') ch[j]=ch[j]-'b'+'B'; puts(ch); } 2、main()
{ char s[ ]=\ int i,j=0;
for(i=1;i<6;i++) if(s[j]>s[i]) j=i;
printf(\ } 3、main()
{ char a[]=\ int i,j,k; k=strlen(a); for(i=0;i<=k-1;j+=1) for(j=i+1;j
{t=a[i];a[i]=a[j];a[j]=t;} puts(a);
printf(\ }
4、main( )
{ char ch[2][5]={\ int i,j;long s=0; for(i=0;i<2;i++)
for(j=0;ch[i][j]>'\\0';j++) s=10*s+ch[i][j]-'0'; printf(\ }
5、#include
{ char str[ ]=\ int i; for(i=0;str[i]!='\\0';i++)
if(str[i]<'0' || str[i]>'9') printf(\ printf(\6、main()
{ char ch[7]={65a2b321\int i,s=0
for(i=0;ch[i]>='0' && ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf(\); }
3
7、以下程序输出的结果是 #include #include main()
{ char w[][10]={\int k;
for (k=1;k<3;k++)
printf(\); }
8、main()
{ char a[]=\int v[5]={0},k;
for(k=0;s[k];k++) switch(s[k])
{ default:v [s[k]] ++; case '1': v [s[k]]++; case '3': v [s[k]]++; case '2': v [s[k]]++; }
printf(\); }
9、下列程序中字符串中各单词之间有一个空格,则程序的输出结果是 【31】 。 #include “string.h” main( )
{ char strl[]=\, *p1=strl; strcpy(strl+strlen(strl)/2,\); printf(\,pl); }
三、程序填空题
1、以下程序中函数huiwen的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串yes!,否则函数返回字符串:no!,并在主函数中输出.所谓回文即正向与反向的拼写都一样,例如:adgda.请填空. #include \
char *huiwen(char *str) {
char *p1,*p2; int i,t=0;
p1=str; p2= for(i=0;i<=strlen(str)/2;i++) if(*p1++!=*p2--) { t=1; break; }
if( ) return (\); else return (\); }
main()
4
{
char str[50];
printf(\); scanf(\);
printf(\ ); }
2、以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。 #include #include main()
{ char s[80], d[80]; int i, j; gets(s);
for(i=j=0; s[i]!=?\\0?; i++)
if( ) { d[j]= ; j++;} d[j]=?\\0?; puts(d); }
3、以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。 Strcen(char a[], char b[]) { int num=0,n=0;
while(*(a+num)!= ) num++;
while(b[n]){*(a+num)=b[n]; num++; ;} return(num); } 4、下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。请填空。 #include #include main()
{ char a[]=\int i, j, k;
k=strlen(a);
for(i=0; i<=k-2; i+=2)
for(j=i+2; j<=k; ) if( ) { t=a[i]; a[i]=a[j]; a[j]=t; } puts(a); printf(\); }
5、以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。例如,输入的字符串为:556,则输出十进制整数366。请填空。 #include main()
5
正在阅读:
字符数组习题(1)03-01
植物学题库选择题部分09-15
A review of recent progress in coatings, surface modi中文翻04-24
第二次作业04-07
癌症发烧与普通发烧有何不同03-26
建筑材料复习指导4.7(习题答案)04-08
前台服务员岗位职责03-01
学习Photoshop中的照片处理技巧05-18
《旅行家树》教学实录03-03
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 数组
- 习题
- 字符
- 国际运输英文缩写
- 2013年中考化学试题汇编—酸碱盐
- 浅谈如何提高小学语文课堂教学的实效性(2)
- 05音乐表演专业技术词汇对照表 - A-05
- 苏教版小学语文五年级上册复习知识点汇总
- 2012年中考数学一轮复习精品讲义(3) - 图文
- “奥派杯”电子商务运营理论考试模拟题
- 英语阅读理解
- 议论文文体知识
- 配位滴定练习题有答案
- 小学三年级语文下册复习计划备课教案(苏教版)
- 英语二自考教程
- 《幼儿园音乐教育》读书活动考试试题
- 关于规范《建设用地批准书》变更用地单位手续的通知
- 三年级下独立作业1
- 移民美国好吗?移民美国的好处
- 寓言故事课外阅读指导教学设计
- 三年级下教案
- 112例多囊卵巢综合征性激素六项检查结果分析
- 浅谈提高双向HDPE钢塑土工格栅无面板加筋挡土墙施工质量措施 -