若需要把一个字符串赋给字符数组,则选用的函数是()。
A.strcmp
B.strcpy
C.strcat
D.strlen
A.strcmp
B.strcpy
C.strcat
D.strlen
第1题
定义一个名为“s”的字符型数组,并且赋初值为字符串“123”的错误语句是()。
A.char s[]={‘1’,‘2’,‘3’,‘\0’);
B.char s[]={“1 23”);
C.char s[]={“123\n”);
D.char s[4]={‘1’,‘2’,‘3’};
第2题
以下叙述中正确的是
A.下面的语句用赋初值方式来定义字符串,其中,"\0"是必须的charstrl[]={"s","t","r","1","\0");
B.有定义语句:charstr1[]=""str1"",数组str1将包含4个元素
C.字符串常量""str1""的类型是:字符串数据类型
D.字符数组的每个元素可存放~个字符,并且最后一个元素必须是"\0"字符
第3题
以下叙述中正确的是
A.语句charstr[10]=""string!"";和charstr[10]={""string!""};并不等价
B.对于一维字符数组,不能使用字符串常量来赋初值
C.对于字符串常量""string!"",系统已自动在最后加入了"\0"字符,表示串结尾
D.在语句charstr[1=""string!"";中,数组str的大小等于字符串的长度
第4题
不能把字符串"Hello!"赋给数组b的语句是( )。
(A)char b[10]={'H','e','1','1','o','!'};
(B)char b[10];b="Hello!";
(C)char b[10];strcpy(b,"Hello!");
(D)char b[10]="Hello!";
第5题
A.char b[10]={'H','e','l','l','o','!'};
B.char b[10]:b="Hello!";
C.char b[10];strcpy(b,"Hello!");
D.char b[10]="Hello!";
第7题
设有一个长度为S的字符串,其字符顺序存放在一个一维数组的第1至第S个单元中(每个单元存放一个字符)。现要求从此字符串的第m个字符以后删除长度为t的子串,m<s,t<(s-m),并将删除后的结果复制在该数组的第s单元以后的单元中,试设计此删除算法。
第8题
以下程序的功能是从键盘上输入一行字符,存入一个字符数组中,然后输出该字符串。请填空。 main() { char str[81],*sptr; int i; for(i=0;i<80;i++) { str[i]=getchar(); if(str[i]==\n)break; } str[i]=【 】; sptr=str1 while(* sptr)putchar(* sptr【 】); }
第9题
下列函数的功能是voidfun(char*a,char*b){while((*b=*a)!=\0){a++;b++;}}
A.使指针b指向a所指字符串
B.将a所指字符串和b所指字符串进行比较
C.将a所指字符串赋给b所指空间
D.检查a和b所指字符串中是否有"\0"
第10题
有以下函数 intfun(char*x,char*Y){ intn=0; while((*x=*Y)&&*x!=\0){ x++;y++;n++;} retumn;) 函数的功能是
A.查找x和y所指字符串中是否有"\0"
B.统计x和Y所指字符串中最前面连续相同的字符个数
C.将y所指字符串赋给x所指存储空间
D.统计x和y所指字符串中相同的字符个数
第11题
数组
1.实验目的
①掌握一维数组和二维数组的定义、赋值和输入输出的方法。
②掌握字符数组和字符串函数的使用。
③掌握与数组有关的算法(特别是排序算法)。
2.实验内容
编程序并上机调试运行。
①以下程序运行后的输出结果是______。
main()
{int a[4][4]={{1-2,-3,-4}, {0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};
int i,j,s=0;
for(i=0;i<4;i++)
{,for(j=0;j<4;j++)
{if(a[i][j]<0)continue;
if(a[i][j]==0)break;
s+=a[i][j];
}
}
printf("%d\n",s):
}
②以下程序运行后的输出结果是______。
main()
{int i,n[]={0,0,0,0,0);
for(i=1;i<=4;i++)
{n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
③以下程序运行后的输出结果是______。
main()
{int i,j,a[][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)a [j][i]=0;
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%d",a[i][j]);
printf("\n");
}
}
④求出任何n×5的数组中所有数据的平均值。
⑤若有说明:int a[2][3]={{1,2,3},{4,5,6}};现要将a的行和列的元素互换后存入另一个二维数组b中。
⑥通过循环按行顺序为一个5*5的二维数组a赋1到25的自然数,然后输出该数组的左下半角。
⑦试编程打印出5*5的螺旋方阵。
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
⑧某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。