当前位置: 首页 > news >正文

杭州在线制作网站需要个网站

杭州在线制作网站,需要个网站,公司提供平台,上鼎工程建设有限公司网站1. 设有定义: char *p; ,以下选项中不能正确将字符串赋值给字符型指针 p 的语句是【多选】( ) A: pgetchar(); B: scanf("%s",p); C: char s[]"china"; ps; D: *p"china"; 答案为ABD A选项&…

1.

设有定义: char *p; ,以下选项中不能正确将字符串赋值给字符型指针 p 的语句是【多选】( )

A: p=getchar(); B: scanf("%s",p); C: char s[]="china"; p=s; D: *p="china";

答案为ABD

A选项,首先类型就不匹配,getchar()函数返回值是int,只能赋值给整型,此时p为char*类型。B选项,p指针在定义的时 候没有分配内存,这行代码在运行的时候会报野指针错误。C选项,指针p指向数组s。D选项,*p代表p指向内存的内容, 这 里要使用p = "china"才正确.

2.

#include<stdio.h>
int main()
{
static char *s[] = {"black", "white", "pink", "violet"};
char **ptr[] = {s+3, s+2, s+1, s}, ***p;
p = ptr;
++p;
printf("%s", **p+1);
return 0;
}

上述代码输出结果是什么?

A: ink B: pink C: white D: hite

答案为A

char **ptr[] 是一个二级指针数组,存的是s这个指针数组中每个元素的地址,p是一个三级指针,ptr这个二级指针数组的 数组名会退化成一个三级指针赋值给p,++p相当于是在ptr数组上往后跳了一个元素的位置,*p就是ptr数组第二个元素的内 容,也就是指向s数组中s+2这个元素的地址,**p就得到了s数组中s+2这个元素的内容, s数组中保存的是字符串的首地址,那就 得到了"pink"这个元素的首地址,在**p+1就是这个地址向后偏移一个字节,也就指到了'i'上,所以printf("%s",**p+1);输出的就 是"ink".

3.

若有定义语句: char s[3][10],(*k)[3],*p; 则以下赋值语句错误的是( )

1.p = s;
2.p = k;
3.p = s[0];
4.k = s;

A: 124 B: 1234 C: 12 D: 234

答案为A

题目主要就考指针类型是否一样,char s[3][10]中s运算时会退化为数组指针,类型为char (*)[10],所指向的每个数组长度 为10;char (*k)[3]很明显k就是一个数组指针,类型也为 char (*)[3],所指向的每个数组的长度为3;char *p类型为char * 指针,s[0]代表二维数组第一行,运算时会退化为第一行首元素地址,类型为char *。在没有强制类型转换的情况下,只有 类型完全相同的指针才能相互赋值.

4.

假设 sizeof(void *) 为4,sizeof(char) 为1,那么对于 char str[sizeof("ab")]; sizeof(str) 的值是( )

A: 2 B: 3 C: 4 D: 代码无法编译

答案为B

因为sizeof是计算数据结构的大小,数组就是一种数据结构,sizeof(str)此时str代表整个数组。对于"ab",编译器都会自动 在后面添一个0,占据一个字节,共3个字节,故数组str的长度为3,元素是char类型,故最终结果为3.

5.

有如下程序段,则对函数 fun 的调用语句正确的是【多选】( )

char fun(char *);
int main()
{
char *s = "one", a[5] = {0}, (*f1)(char *) = fun, ch;
return 0;
}

A: *f1(&a); B: f1(*s); C: f1(&ch); D: ch = *f1(s);要改成(*f1)(s)才正确

答案为CD

我们知道使用(*f1)(s)与f1(s)效果是相同的。*f1(s)中()的优先级比*高,先结合为f1(s),返回结果是char,*f1(s)是对返回结 果char类型数据解引用,是错的,改成(*f1)(s)是对的,故D正确;对ch取地址得到char *,作为参数没问题,C正确;A错 在对char解引用,B错在参数类型不匹配.

6.

给定两个字符串 s1 和 s2 ,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符 串.

bool CheckPermutation(char* s1, char* s2){
int table1[256] = {0}, table2[256] = {0};
int len1 = strlen(s1);
int len2 = strlen(s2);
if (len1 != len2) return false;//长度都不同,直接不可能了
while(*s1 != '\0' && *s2 != '\0') {
table1[*s1] += 1;//以字符ascii值为下标对s1字符串的字符进行计数table2[*s2] += 1;//以字符ascii值为下标对s2字符串的字符进行计数
s1++;
s2++;
}
for (int i = 0; i < 256; i++) {
if (table1[i] != table2[i]) { //判断两个字符串相同位置是否计数相同即可
return false;
}
}
return true;
}

谢谢
http://www.yayakq.cn/news/717086/

相关文章:

  • 海洋cms做电影网站好做吗网站建设有几种方案
  • 电子商务网站的类型页面看不到网站
  • 江苏省做网站湛江赤坎孵化器网站建设招聘
  • 站长之家网站流量查询驻马店网站建设熊掌号
  • 扬中网站优化哪家好网站建设需要学多久知乎
  • 大连专业做网站深圳台历制作
  • 卦神岭做网站网站的三种基本类型
  • 网站后台 网站页面没有显示服务器 打开网站iis7
  • 大型网站制作公司网站开发的任务要求
  • 河南论坛网站建设手机软件下载大全
  • 新网个人网站备案网络营销渠道
  • 模板建站和定制网站的对比东莞网站搭建
  • 网站制作收费做网站一般需要多久
  • 广告灯箱设计制作价格南京市网站seo整站优化
  • 雄安网站建设400多少钱作文素材网站
  • 云尚网络科技有限公司网站建设wordpress 仿站教程
  • 站长工具同大全站外贸网站建设 翻译
  • 龙岩整站优化如何把做的网站与域名连接不上
  • 行业网站建设费用网页与网站设计说明
  • 做电影下载网站需要什么移动终端网站建设
  • 无锡网站改版多少钱wordpress文章总阅读量
  • 北京网站seo优化推广建设银行个人官方网站
  • 哪家可以做网站河南推广网站的公司
  • wordpress 站群会员网站建设好后为什么要维护
  • 嘉兴网站建设策划方案外国食品优秀设计网站
  • 黔东南购物网站开发设计最有设计感的网站
  • 做影集的网站或软件公司logo设计大全 图片欣赏
  • 做网站的一些费用网站制作明细清单
  • 红酒公司网站建设模板6841理论网
  • 兰州做高端网站的公司wordpress自动水印代码