收藏 分享(赏)

南开大学二级考试100题.doc

上传人:dzzj200808 文档编号:2274540 上传时间:2018-09-09 格式:DOC 页数:31 大小:142.50KB
下载 相关 举报
南开大学二级考试100题.doc_第1页
第1页 / 共31页
南开大学二级考试100题.doc_第2页
第2页 / 共31页
南开大学二级考试100题.doc_第3页
第3页 / 共31页
南开大学二级考试100题.doc_第4页
第4页 / 共31页
南开大学二级考试100题.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、以下为南开 100 题:1、 编一个函数 fun(char *s),函数的功能是把字符串中的内容逆置。例子如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba。试题程序:#include #include #include #define N 81/*注:该题的算法是先分别找出字符串的两头,然后同时逐一往中间移动,每移动一次都进行两字符的位置对换,直到中间字符(用 s+i#include /*这题的关键在于进行行列下标转换的算法,由矩阵的对称性我们不难看出在进行行列互换时 aj在好是与 aji互换,因而只要我位让程序走完矩阵的左上角即可(用for(i=0;i#

2、include #define N 20/*注:该题的算法是:用 for()循环一步一步地找元素,用 if(!ai%2)来判断是否是奇数,%运算是求余运算,当对 2 求余为 1时表示原数为奇数,否则为偶数。*/fun(int *a,int n,int *odd,int *even) int i; *even=0;*odd=0;for(i=0;i#include #define VSIZE 20int vectorVSIZE;/*注:该题的算法是用一个变量( j)来存储最小值元素的下标,在循环过程中让每个元素都与原最小值元素进行大小比较(if(listi#include /*注:h 乘以 100

3、0 后正好是原小数点后第三位做了新数的个位数,然后再进行加 5运算时。如原小数点后第三位为 4 及以下则加 5后还是不能进一位(即四舍),如是 5 及以上则加5 后该位就要向前进一位数(即五入)。进行加 5 运算后除 10 再赋给一个整型变量此时就只有原小数点第二位及以前各位保留在整型变量中,最后再对整型变量除 100,这样又出现了两位小数。该题中,进行四舍五入后一定要赋给一个整型变量才能将不用部分彻底变成 0 。*/float fun(float h) long t;h=h*1000;t=(h+5)/10;return (float)t/100;main()float a;clrscr();

4、printf(“Enter a:“); scanf(“%f“,printf(“The original data is:“);printf(“%fnn“,a);printf(“The result :%6.2fn“,fun(a);6、 编写函数 fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。若程序执行时,输入字符串为:turbo c and Borland c+从键盘上输入字符:n,则输出后变为:turbo c ad borlad c+如果输入的字符串不存在,则字符串照原样输出。试题程序。#include #include /*注:该题的算法是让 i 控制一

5、个一个字符往后走,在移动过程中如果 si不是要删的字符,则将其按顺序放到新串中(新串亦是用 s 来做,只是用 k 来控制新串的下标,由于要删除一些元素,因此新串的下标总是比原下标 i 要慢。因而可用此法即同一字符串变量的方法。*/int fun(char s,int c)int i,k=0;for(i=0;si;i+)if(si!=c) sk+=si; sk=0;main() static char str=“turbo c and borland c+“;char ch;clrscr();printf(“ :%sn“,str);printf(“ :“);scanf(“%c“,fun(str,

6、ch);printf(“str=%sn“,str);7、 请编写一个 unsigned fun(unsigned w),w 是一个大于 10 的无符号整数,若 w 是n(n=2)位的整数,函数求出 w 的后 n-1 位的数作为函数值返回。例如:w 值为 5923,则函数返回 923;w值为 923 则函数返回 23。试题程序。#include #include /* 注:由于 unsigned 型整数在 0-65535 这间,只要它大于 10000 则对 10000 求余即得出后面 4 位,否则如果大于 1000 则对 1000 求余得出后 3 位数,这样一层一层往小的判断。由于return

7、的作用除了返回值以外,还有当执行到 return 时就跳出该程序,所以可以连续的用 if()语句。 */unsigned fun( unsigned w ) if(w=10000) return w%10000;if(w=1000) return w%1000;if(w=100) return w%100;return w%10;main() unsigned x;printf( “enter a unsigned integer number :“ );scanf( “%u“,if(x#include #define MAX 100/*注:循环 for(i=2;i=k)用于判断在上一个 fo

8、r()循环中 i 能否走到 k,如果能则表示在 2 到 k-1 的数都不能整除 k,即 k 为素数。*/int fun( int lim, int aaMAX) int i,j=0,k;for( k=2; k=k) aaj+=k;return j;main() int limit,i,sum;int aaMAX;printf(“n input a integer number:“);scanf(“ %d“,sum=fun(limit,aa);for(i=0; i#include #define M 4#define N 5/*注:该题的第一个 for()循环是计算矩阵的最上一行和最下一行的总和

9、,第二个 for()是计算除两头元素以外的最左一列和最右一列的元素的和,最后 sun 就是周边元素的和。*/int fun(int aMN)int sum=0,i;for(i=0;i#include #include /*该题采用的排序法是选择法进行降序排序,算法是用外 for()循环从字符串的前端往后端走动,每走动一个字符都用内嵌的 for()循环在该字符后找出最小的字符与该字符进行换位。直到外 for()循环走到最后一个字符。此外,此题还要注意把首尾字符除开,即在最外层 for()循环中从 1 开始,只到 num-2 即可。*/int fun(char *s,int num) int i,

10、j,t;for(i=1;istrlen(p)p=ai; *max=p;main() char ss1081,*ps;int n,i=0;clrscr();printf(“enter string:n“);gets(ssi);puts(ssi);while(!strcmp(ssi,“*“)=0)i+;gets(ssi);puts(ssi);n=i;fun(ss,n,printf(“nmax=%sn“,ps);13、 请编一个函数 fun,其中 n 所指存储单元中存放了数组中元素的个数。函数的功能是:删除所有值为 y 的元素。数组元素中的值和 y 的值由主函数通过健盘读入。试题程序。#includ

11、e #include #define M 20/*注:该题的算法是,用 for()循环控制元素逐一判断数组元素是否等于 y,若不等则赋给新数 bb,由于删除的关系 j 总是小于或等于 i,故而可用 bb 作为新数组,与第 6题相似。还要注意*n=j;如果没有这个语句则不能传回新数组的个数,另外也不能换成 n=这点是用指针时常犯的错误,切记!*/void fun (int bb, int *n,int y) int i,j=0;for( i=0; i100)printf(“data eror!n“);exit(0);y=fun(x);if(y) printf(“%d yesn“,x);else

12、printf (“%d no!n“,x);16、 请编写函数 fun,函数的功能是:在字符串中所有数字字符前加一个$字符。例如,输入:A1B23CD45,则输出为:A$1B$2$3CD$4$5。注意:部分源程序给出如下。#include /*注:该题用 while()循环来控制原字符串从头走到尾,在走动过程中判断是当前字符是否是数字,若是则在新串中先连一个$然后再连原字符,否则直接连原字符。一定要注意指针和下标的变化。最后要把新串拷贝到 s 所指的地址中,注意不能用 s=a;若用了,则实参数组还是原字符串。*/void fun( char *s)char a100;int i=0;while(

13、*s)if(*s=0z)si=si+1;else if(si=z) si=a;else if(si=Z) si=A;main() char aN;clrscr();printf(“enter a string:“);gets(a);printf(“the original string is:“);puts(a);fun(a);printf(“the string after modified:“);puts(a);20、 请编写函数 fun,函数的功能是:将s 所指字符串中、下标为奇数位置上的大写字母转换为字母序列中的下一个小写字母;若该位置上是小写字母,则不转换;若该位置上是大写字母 Z,

14、则仅转换成小写字母 z。例如,输入:ABCdxZZZ,则输出为:AcCdXzZz。试题程序。#include “stdio.h“#define N 80/* 该题的算法与上一题相似,注意同一个字母小写要比大写在 ASCII 值上大 32。*/void fun(char *s)int i;for(i=1;i=Afor(i=0;i#include#define M 81/* 注:本题用 while()循环来控制字符的移动,每移动一个字符都要进行判断(if(*ss=c))是否为指定的字母,若是则个数加1。这里要注意如何让 ss 指针向下走动(ss+)。*/int fun(char *ss,char

15、c)int num=0;while(*ss!=0)if(*ss=c) num+;ss+;return(num);main()char aM,ch;clrscr();printf(“nPlease enter a strint:“);gets(a);printf(“nPlease enter a char:“);ch=getchar();printf(“nThe number of the char is:%dn“,fun(a,ch);23、 程序定义了 N*N 的二维数组,并在主函数中赋值。请编写函数 fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的 s。例如:a 数

16、组中的值为则返回主程序后 s 的值应为:3.375。试题程序。#include #include #include #define N 5/* 注意不能重复计算,它与题 21 不同,第一个 for()循环求出第一列与最后一列的和,第二个 for()循环求出第一行与最后一行(已除去两头元素),要注意第二个 for()中起始为 1,最后为 N-2。*/double fun (int wN) int i,t=0;double s=0;for(i=0;i#include/* 注:第一个 for()循环用于让 i 成为第一个字符串的结束符的下标,要注意在这个for()后要有一个分号否则出错。第二个 fo

17、r()的作用是将第二个字符串一个一个字符依次放到第一个字符串的未尾。此外,还要注意最后一定要有 p1i=0;来给字符串加上结束符。*/void fun(char p1,char p2)int i,j;for(i=0;p1i;i+);for(j=0;p2j;j+)p1i+=p2j;p1i=0;main() char s180,s280;clrscr();printf(“Enter s1 and s2:n“);scanf(“%s%s“,s1,s2);printf(“s1=%sn“,s1);printf(“s2=%sn“,s2);printf(“Invoke fun(s1,s2):n“);fun(s

18、1,s2);printf(“After invoking:n“);printf(“%sn“,s1);25、 程序定义了 N*N 的二维数组,并在主函数中自动赋值。请编写函数 fun(int aN),函数的功能是:使数组第一列元素中的值与最后一列元素中的值对调、第二列元素的值与倒数第二列中的值对调、其他依次类推。例如:a 数组中的值为则返回主程序后 a 数组中的值应为 注意:部分源程序给出如下。请勿改动主函数 main 和其它函数中的任何去何内容,仅在函数 fun 的花括号中填入你编写的若干语句。试题程序。#include #include #include #define N 5/* 本题的第

19、一个 for()循环用于控制行,而内嵌的 for()用于在同一行中将列与列对调,当 i 为 0 时 ami为第 m 行的第一列元素,amN-1-i为第 m 行的最后一列的元素,正好符合调换的要求。依次类推。*/int fun(int aN) int i ,m,t;for(m=0;m#include/* 26 题:本题没有先求出 A 的转置,而是直接利用转置的性质(即第一行作为转置后的第一列,第二行作为转置后的第二列,的行列互换的性质)。而且最后要求出两矩阵的相加后得出的新矩阵,由转置性质可知原aji转置后位置为 aij,在表达式:bij=aij+aji第一个 a 为 A 的元素,第二个 a 为

20、 A的元素。 */void fun(int a33,int b33)int i,j;for(i=0;i#include #include #define N 5/* 27 题:该题与 25 题相似,外层 for()循环用于控制一列一列地移动,内嵌的 forr()循环用于控制在同一列内对应行元素的对调。aim为第 m 列第 i 行元素,而 aN-1-im为第 m 列倒数第 i 行的元素,正好需要对调。*/fun(int aN) int i,m,t;for(m=0;m#include #include /* 28 题:第一个 for()循环用来计算 score数组中分数的总和,然后用 aver/=

21、m 求出平均值,第二个循环用来找出小于平均分的元素,并放到数组 below 中,这里要注意 j 的递增方式。*/int fun(int score,int m, int below) int i,j=0,aver=0;for(i=0;i#include#include#define N 5/* 29 题:该题的关键是如何表示出左下半角的元素,当从上往下到第 i 行时只有左边的i 个元素要置为 0(每行总是如此) 。用外层 for()来控制行而内嵌的 for()来控制每行的左边元素,故而在内嵌 for()中 j 最大只能循环到 i(即表示出第 i 行左边的 i 个元素) 。*/int fun(i

22、nt aN)int i,j;for(i=0;i#include /* 30 题:该题关键就是如何表示能被 7 或11 整除,但不能同时被 7 和 11 整除。用(i%7=0)/(i%11=0)来表示能被 7 或 11 整除,用 !(i%7=0)for(i=1;i#include #include #define N 5/* 31 题:该题的关键亦是在如何表示右上半角,当从上往下到第 i 行时要从第 i 列(所以内嵌 for()的 j 从 i 开始循环)开始替换直到最后一列,本题用外层 for()来控制行,而用内嵌的 for()来控制在每一行内右边元素置 0。int fun(int aN) in

23、t i,j;for(i=0;i#include /* 32 题:由于要求的数不能是偶数故编程时从 1 开始循环而步长为 2 这样正好保正i 永远的奇数。这里也要注意存放结果的数组 pp的下标变化方式。*/void fun(int x, int pp, int *n) int i,j=0;for( i=1;i#include #include #define N 5/* 33 题:该题的关键也是在如何表示右上半角(可以与 31 题相同) ,本题采用的是在一行内从最后一列的元素开始往前乘,只有j=i 时才改变(原理与 31 题相同) 。*/int fun( int aN, int m) int i

24、,j;for(i=0; i=i; j-)aij*=m;main() int aNN,m,i,j;printf(“* the array *n“);for( i=0; i=3);printf(“m=%4dn“, m);fun( a,m);printf(“ the result n“);for(i=0; i#include/* 34 题:本题采用的是字母的 ASCII 码值与数组 pp 下标的对应转换关系分别求出对应字母的个数。第一个 for()是给 pp 赋初值 0,第二个 for()用于控制在字符串内从头到尾移动。由于字母a的 ASCII 码值为 97 而它的个数要放在 pp0中,而a-97

25、的值正好为 0,其它的依此类推。*/void fun(char *tt,int pp) int i;for(i=0;i=a)pp*tt-97+; main() char aa1000;int bb26,k;clrscr();printf(“nPlease enter a char string:“);scanf(“%s“,aa);fun(aa,bb);for(k=0;k#include #include #define N 5/* 35 题:本题与 29 题相似,只要能表示出左下半角的元素即可。*/int fun( int aN, int n) int i,j;for(i=0; i=3);pr

26、intf(“n=%4d n“, n);fun( a,n);printf( “* the result *n“);for(i=0;i#include /* 36 题:本题的关键在于如何表示出个、十、百、千位数。对于一个两位的整数,用 10 对它求余得到个位数上的数,将它除 10得到十位数上的数。*/void fun(int a, int b, long *c) int i,j,k,n;i=a%10; j=a/10; k=b%10; n=b/10;*c=j*1000+k*100+i*10+n;main() int a,b; long c;printf(“ input a, b: “);scanf(

27、“%d%d“, fun(a,b,printf(“ the result is :%ldn“, c);37、请编写一个函数 void fun(int m,int k,int xx),该函数的功能是:将大于整数m 且紧靠 m 的 k 个素数存入 xx 所指的数组中。例如,若输入 17,5,则应输出:19,23,29,31,37。注意:部分源程序给出如下。请勿改动主函数 main 和其它函数中的任何去何内容,仅在函数 fun 的花括号中填入你编写的若干语句。试题程序。#include #include /* 37 题:本题中的 for()循环用来判断一个数是否为素数,由于个数只能是 k 个所以用 d

28、o-while 循环来控制。 */void fun(int m, int k, int xx) int i,j=0,p=m+1;dofor( i=2; i=p) xxj+=p;p+; while(j#include #include #define N 10typedef struct ss char num10; int s; STU;/* 38 题:这个题目中有一结构组数,要找的是数组元素中整型成员的值最小的元素。要 注意本题中的赋值方式(分两部分,对于字符型成员只能用 strcpy()函数,而不能用等号“=”进行赋(即不能用 (*s).num=ak.num),这与字符串的赋值相同(切记)

29、。*/fun( STU a, STU *s) int k,i;(*s).s=a0.s;for( i=0;i#define N 80/* 39 题:本题要删除从下标 k 开始的后 n个字符。所以所用的算法是将下标为 k+n及以后的所有字符依次往前移 n 个字符,这样就把要删除的字符覆盖了(即删除了)。记得最后 要在新串尾加一个结束符0 。 */void fun( char *a, int k, int n) int m=strlen(a),i;for(i=k+n; i#include #include #define N 10typedef struct ss char num10; int s

30、; STU;/* 40 题:本题与 38 题相似,只是采用的赋值方式不同。采用的是结构体元素对结构体元 素赋值。*/fun( STU a, STU *s) int i;*s=a0;for( i=1;i(*s).s)*s=ai;main() STU aN= “A01“,81,“A02“,89,“A03“,66,“A04“,87,“A05“,77,“A06“,90,“A07“,79,“A08“,61,“;A09“,80,“A10“,71 , m;int i;printf(“* the original data *n“);for(i=0;ip ) p=si; *k=i;s*t=p; (*t)+;4

31、2 题:本题要求删除下标为奇数、同时ASCII 值也为奇数的字符反过来想就是要将不标为偶数或 ASCII 值为偶数的字符留下并放到 t 数组中。在看类似题型时要注意题中是否用了“同时”两个字。本题采用的就是后一种思编程方式。*/void fun( char *s, char t) int i,j=0,n=strlen(s);for(i=0;i1e-006 不用 fabs(x0-x1)=0.0,若是用后面的表达式将会出现永无成立的时候。*/float fun() float x0,x1=0;do x0=x1;x1=cos(x0);while( fabs(x0-x1)1e-006);return

32、x1;50 题:本题要删除的是 ASCII 值为偶数的字符即要将 ASCII 值为奇数的留下。注意if()中表示奇数的方式:采用的是 si%2 而不是 si%2=1 由于在 C 语言中当 si为奇数时 si%2 的值为 1(即为逻辑真,它与 si%2=1 的效果是一样的。在一点要注意,它在笔试考中也常出现。*/void fun( char *s, char t) int i,j=0,n=strlen(s);for(i=0; i=0return max;67 题:本题采用的算法是:先让*p(包括*p)前面不是*号的字符按顺序留在新串中(新串与原串共用一个数组变量)用 for()循环来完成,最后用

33、 while()循环再把*p(不含*p)以后的所有字符也按顺序留下。在注意下标的变化方式。*/void fun( char *a, char *p)int i,j=0;for(i=0;a+i=eps)t*=i/(2*i+1.0);i=i+1;s=s+t;pi=2*s;return pi;77 题答案int i,j;for(i=0;ai=*;i+);if(in)j=i-n;i=0;while(ai+=aj+;ai=0;79 题答案int i;char *b;b=a;for(;*b;b+);b-;while(*b=*)b-;for(i=0;ifloat fun(float *a, int n) f

34、loat ave=0;int i;for(i=0;i#include void fun(char *a) int i,j,k,l=0;char *p,*t;for(i=0;*(a+i)=*;i+)pi=*(a+i);for(j=0;j#include void fun(int a,int b , long *c) int ag,as,bg,bs;ag=a%10; as=a/10%10;bg=b%10; bs=b/10%10;*c=as+ag*10+bs*100+bg*1000;main() int a,b;long c;clrscr();printf(“Input a,b:“);scanf(“

35、%d%d“,fun(a,b,printf(“The result is :%ldn“,c); 83#include #define N 8typedef struct char num10;double sN;double ave;STREC;void fun(STREC *s) int i;double sum=0;for(i=0;isi;s-ave=sum/N;main() STREC s=“GA005“,85.5,76,69.5,85,91,72,64.5,87.5;int i;fun(printf(“The %ss strdent data:n“,s.num);for(i=0;i#in

36、clude void fun (int a, int b ,long *c) int d,e,f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=1000*e+100*d+10*g+f;main () int a,b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“, fun (a, b, printf (“The result is: %ldn“, c);85#include #define N 12typedef struct char num 10;double s;STREC;double fun ( STR

37、EC *a, STREC *b, int *n ) int i,j;double sum=0,t;for(i=0;it)bj+=ai;*n=j;return t;main () STREC sN=“GA05“,85, “GA03“,76, “GA02,69, “GA04“,85,“GA01“,91, “GA07“,72, “GA08“,64, “GA06“,87,“GA09“,60, “GA11“,79, “GA12“,73, “GA10“,90;STREC h N; FILE *out ;int i,n; double ave;ave=fun ( s, h, printf ( “The %d

38、 student data which is higher than %7.3f:n“, n, ave);for ( i=0; i#include void fun (int a, int b, long *c ) int d,e,f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=e*1000+g*100+d*10+f;main () int a, b; long c;clrscr ();printf (“ Input a, b;“);scanf (“%d%d“, fun (a, b, printf (“The result is : %ldn“, c);87#includ

39、e #define N 8typedef struct char num10;double s; STREC;double fun (STREC *a, STREC *b, int *n)int i,j;double s=0,t;for(i=0;i#include void fun (int a, int b, long *c)int d,e,f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=e*1000+f*100+d*10+g;main () int a, b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“,

40、 fun ( a, b, printf (“The result is: %ldn“, c);89#include #define N 16typedef struct char num10;int s; STREC;int fun ( STREC *a, STREC *b ) int i,j,p;p=a0.s;for(i=0;i#define N 16typedef struct char num10;int s; STREC;int fun ( STREC *a, STREC *b )int i,j,p=a0.s;for(i=0;ip)p=ai.s;for(i=0,j=0;i#includ

41、e void fun (int a, int b, long *c) int d,e,f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=1000*g+100*e+10*f+d;main () int a, b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“, fun ( a, b, printf (“The result is: %ldn“, c);92#include #define N 16typedef struct char num10;int s; STREC;int fun ( STREC a )in

42、t i,j,t,p;STREC k;for(i=0;ip) p=aj.s;t=j;k=ai;ai=at; at=k;main () STREC sN= “GA005“,85, “GA003“,76, “GA002“,69, “GA004“,85,“GA001“,91, “GA007“,72, “GA008“,64, GA006“, 87,“GA015“,85, “GA013“,91, “GA012“,64, GA014“,91,“GA011“,66, “GA017“,64, “GA018“,64, GA016“,72;int i; FILE *out;fun ( s );printf (“Th

43、e data after sorted :n“);for (i=0; i#include void fun (int a, int b, long *c) int d,e, f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=1000*g+100*d+10*f+e;main () int a, b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“, fun ( a, b, printf (“The result is: %ldn“, c);94#include #include #define N 16typedef

44、 struct char num10;int s; STREC;STREC fun ( STREC *a, char *b )int i,j;for(i=0;i#include void fun (int a, int b, long *c)int d,e,f,g;d=a/10;e=a%10;f=b/10;g=b%10;*c=1000*f+100*e+g*10+d;main () int a, b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“, fun ( a, b, printf (“The result is: %ldn“,

45、c);96#include #define N 16typedef struct char num10;int s; STREC;int fun ( STREC *a, STREC *b, int l, int h )int i,j;for(i=0,j=0;i=ld=a/10;e=a%10;f=b/10;g=b%10;*c=1000*f+100*d+10*g+e;main () /*主函数*/ int a, b; long c;clrscr ();printf (“Input a, b:“);scanf (“%d%d“, fun ( a, b, printf (“The result is:

46、%ldn“, c);98#include #include #define N 8struct slist double s;struct slist *next;typedef struct slist STREC;double fun ( STREC *h )double sum,ave;STREC *q;sum=(*h).s;q=h-next;while(q)sum+=(*q).s;q=q-next;ave=sum/N;return ave;STREC * creat ( double *s ) STREC *h, *p, *q; int i=0;h=p=( STREC* ) malloc (sizeof (STREC ) );

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报