2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)_第1頁
2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)_第2頁
2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)_第3頁
2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)_第4頁
2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)_第5頁
已閱讀5頁,還剩56頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)學校:________班級:________姓名:________考號:________

一、單選題(12題)1.有以下程序:#include<stdio.h>intfun(int*a,int*b,intn){inti=0,j=0,sum=0;for(;i<n;i++){sum+=a[i];if((i+1)%2==0){b[j++]=sum;sum=0;}}returnj;}main(){inta[8]={1,0,2,3,5,4,2,1},b[8],k,i;k=fun(a,b,8);for(i=0;i<k;i++)printf(“%d”,b[i]);}程序的運行結果是()。

A.0242B.1593C.1351D.286

2.一個遞歸的定義可以用遞歸過程求解,也可以用非遞歸過程求解,但單從運行時間來看,通常遞歸過程比非遞歸過程()。

A.較快B.較慢C.相同D.無法確定

3.二叉樹中第5層上的結點個數最多為________

A.8B.15C.16D.32

4.下述關于數據庫系統的敘中正確的是______。

A.數據庫系統減少了數據冗余

B.數據庫系統避免了一切冗余

C.數據庫系統中數據的一致性是指數據類型的一致

D.數據庫系統比文件系統能管理更多的數據

5.以下選項中,非法的字符常量是______。

A.'t\'B.'\17'C.\nD.'\xaa'

6.以下敘述中錯誤的是()。

A.一個C程序中可以包含多個不同名的函數

B.一個C程序只能有一個主函數

C.C程序在書寫時,有嚴格的縮進要求,否則不能編譯通過

D.C程序的主函數必須用main作為函數名

7.以下關于return語句的敘述中正確的是()。

A.一個自定義函數中必須有一條return語句

B.一個白定義函數中可以根據不同情況設置多條return語句

C.定義成void類型的函數中可以有帶返回值的return語句

D.沒有return語句的自定義函數在執行結束時不能返回到調用處

8.有以下程序,程序中庫函數islower(ch)用以判斷ch中的字母是否為小寫字母:

程序運行后的輸出結果是()。

A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!

9.在軟件開發過程中,軟件結構設計是描述______。

A.數據存儲結構B.軟件體系結構C.軟件結構測試D.軟件控制過程

10.

11.設有函數說明語句:intfun(int,int);以及函數指針定義語句:int(*f)(int,int);若要使函數指針指向函數fun的入口地址,以下選項中正確的是()。

A.f=fun();B.*f=fun;C.f=fun;D.*f=fun();

12.關于排序算法的以下說法,錯誤的是()

A.歸并排序的平均時間復雜度O(nlogn),最壞時間復雜度O(n^2)

B.堆排序平均時間復雜度O(nlogn),最壞時間復雜度O(nlogn)

C.冒泡排序平均時間復雜度O(n^2),最壞時間復雜度O(n^2)

D.快速排序的平均時間復雜度O(nlogn),最壞時間復雜度O(n^2)

二、2.填空題(12題)13.表示條件;10<x<100或x<0的C語言表達式是【】。

14.下面程序的運行結果是()。##include<stdio.h>main(){inta,s,n,m;a=2;s=0;n=1;m=1;while(m<=4){n=n*a;s=s+n;++m;}printf("s=%d",s);}

15.按照邏輯結構分類,結構可以分為線性結構和非線性結構,棧屬于______。

16.閱讀下列程序,則程序的輸出結果為【】。

#include"stdio.h"

structty

{intdata;

charc;};

main()

{structtya={30,′x′};

fun(a);

printf("%d%c",a.data,a.c);}

fun(structtyb)

{b.data=20;

b.c=′y′;}

17.設x、y、z為整型變量,且x=2,y=3,z=4,當執行以下語句后,x的值是______。

x*=(y++)+(--z);

18.若有定義doublea[5];,則a數組元素下標的上限為______。

19.以下程序運行后的輸出結果是______。

inta=5;

fun(intB)

{staticinta=10;

a+=b++;

printf("%d",A);

}

main()

{intc=20;

fun(C),

a+=C++;

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

}

20.以下程序運行后的輸出結果是______。

main()

{

intx=15;

while(x>10&&x<50)

{

x++;

if(x/3){x++;break;}

elsecontinue;

}

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

}

21.在E-R圖中,矩形表示【】。

22.下面程序的功能是將字符串a下標值為偶數的元素由小到大排序,其他元素不變,請填空。

#include<stdio.h>

main()

{chara[]="labchmfye",t;

inti,j;

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

for(j=i+2;j<9;【】)

if(【】)

{t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);

printf("\n");

}

23.若有如下定義:

int[]={11,24,56,19,29,39),*t=s;

則不移動指針t,且通過指針t引用數組中值為29的元素的表達式是【】。

24.以下程序運行后的輸出結果是______。

main()

{inta=3,b=4,c=5,t=99;

i[(b<a&&a<C)t=a;a=c;c=t;

if(a<c&&b<C)t=b;b=a;a=t;

printf("%d%d%d\n",a,b,c);

}

三、3.程序設計題(10題)25.請編寫程序fun,函數的功能是:實現B=A+Aˊ,即把矩陣A加上A的轉置,存放在矩陣B中。計算結果在main函數中輸出。

例如,輸入下面的矩陣:其轉置矩陣為:

123147

456258

789369

程序輸出:

2610

61014

101418

注意:部分源程序在文件PROGl.C中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

26.函數fun的功能是:將a、b中的兩個兩位正整數合并形成一個新的整數放在c中。合并的方式是:將a中的十位和個位數依次放在變量c的千位和十位上,b中的十位和個位數依次放在變量c的個位和百位上。

例如,當a=45,b=12。調用該函數后,c=4251。

注意:部分源程序存在文件PROGl.C中。數據文件IN.DAT中的數據不得修改。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

27.請編寫函數fun(),它的功能是計算:

s=(ln(1)+ln(2)+ln(3)+…+ln(m))0.5

在C語言中可調用log(n)函數求ln(n)。

例如,若m的值為20,則fun()函數值為6.506583。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<math.h>

doublefun(intm)

{

}

main()

{

clrscr();

printf("%f\n",fun(20));

}

28.假定輸入的字符串中只包含字母和*號。請編寫函數fun(),它的功能是:只刪除字符串前導和尾部的*號,串中字母之間的*號都不刪除。形參n給出了字符串的K度,形參h給出了字符串中前導*號的個數,形參e給出了字符山中最后*號的個數。在編寫函數時,不得使用c語言提供的字符串函數。

例如,若字符串中的內容為****A*BC*DEF*G*******,刪除后,字符串中的內容則應當是A*BC*DEF*G。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,儀在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<stdio.h>

#include<conio.h>

voidfun(char*a;intn,inth,inte)

{

}

main()

{

chars[81],*t,*f;

intm=0,tn=0,fn=0;

printf("Enterastring:\n");

gets(s);

t=f=s;

while(*t)

{t++;m++;}/*m為字符串的長度*/

t--;/*指針t指身字符串尾部*/

while(*t=='*')

{t--;tn++;}

/*指針t指向最后一個字母,tn統計尾部'*'的個數*/

while(*f=='*')

{f++;fn++;}

/*指針f指向第一個字母,tn統計導'*'的個數*/

fun(s,m,fn,tn);

printf("Thestringafterdeleted:\n");

puts(s);

}

29.m個人的成績存放在score數組中,請編寫函數fun,它的功能是:將低于平均分的人數作為函數值返回,將低于平均分的分數放在below所指的數組中。

例如,當score數組中的數據為:10、20、30、40、50、60、70、80、90時,函數返回的人數應該是4,below中的數據應為:10、20、30、40。

注意:部分源程序在文件PROGl.C文件中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

30.學生的記錄由學號和成績組成,N名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun(),它的功能是:函數返回指定學號的學生數據,指定的序號在主函數中輸入。若沒找到指定的學號,在結構體變量中給學號置空串,給成績置-1,作為函數值返回(用于字符串比較的函數是strcmp)。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<stdio.h>

#inctude<stdlib.h>

#defineN16

typedefstruct

{charnum[10];

ints;

}STREC;

STRECfun(STREC*a,char*b)

{

}

main()

{

STRECs[N]={{"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",77},{"GA017",64},

{"GA018",64},{"GA016",72}};

STRECh;

charre[10];

inti,n;

FILE*out;

printf("Theoriginaldata:\n");

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

{if(i%4==0)

printf("In");

/*每行輸出4個學生記錄*/

printf("%s%3d",s[i]num,s[i]s);

}

printf("\n\nEnterthenumber:");

gets(m);

h=fun(s,m);

printf("Thedata:");

printf("\n%s%4d\n",h.num,h.s);

printf("\n");

out=fopen("out80.dat","w");

h=fun(s,"GA013");

fprintf(out,"%s%4d\n",h.num,h.s);

fclose(out);

}

31.請編寫函數fun,函數的功能是:移動字符串中的內容,移動的規則如下:把第1到第m個字符,平移到字符串的最后,把第m+l到最后的字符移到字符串的前部。

例如,字符串中原有的內容為:ABCDEFGHIJK,m的值為3,則移動后,字符串中的內容應該是:DEFGHIJKABC。

注意:部分源程序在文件PROGl.C中。請勿改動主函數main和其他函數中的任何內容,,僅在函數fun的花括號中填入你編寫的若干語句。

32.編寫一個函數,從傳入的num個字符中找出最長的一個字符串,并通過形參指針max傳回該串地址(用****作為結束輸入的標志)。

注意:部分源程序給出如下.

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<string.h>

fun(char(*a)[81],intnum,char*max)

{

}

main()

{

charss[l0][81],*ps;

intn,i=0;

clrscr();

prlntf("輸入若干個字符串");

gets(ss[i]);

puts(ss[i]);

while(!strcmp(ss[i],"****")==0)

/*用****作為結束輸入的標志*/

{

i++;

gets(ss[i]);

puts(ss[i]);

}

n=i;

ps=fun(ss,n,&ps);

print~("\nmax=%s\n",ps);

}

33.請編寫函數fun(),它的功能是計算:s=(1-In(1)-In(2)-In(3)-…-1n(m))2

s作為函數值返回。

在C語言中可調用log(n)函數求In(n)。log函數的引用說明是doublelog(doublex)。

例如,若m的值為15,則fun()函數值為723.570801。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<math.h>

doublefun(intm)

{

}

main()

{

clrscr();

printf("%f\n",fun(15));

}

34.請編寫函數fun,其功能是:計算并輸出

例如,在主函數中從鍵盤給n輸入20后,輸出為:s=534.188884。

注意:要求n的值大于1但不大于100。

部分源程序在文件PROGl.C中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

四、單選題(0題)35.若已定義:inta[9],*p=a;并在以后的語句中未改變p的值,不能表示a[1]地址的表達式是_______。

A.p+1B.a+1C.a++D.++p

五、單選題(0題)36.有以下程序:main{chara=a,b;printf("%c,",++a);printf("%c\n",b=a++):)程序運行后的輸出結果是()。A.b,bB.b,cC.a,bD.a,c

六、單選題(0題)37.有以下程序:

程序執行后的輸出結果是()。

A.45B.50C.60D.55

參考答案

1.B程序中,fun函數的功能是接收兩個數組a、b,以及數組a的元素個數n,然后通過for循環將數組a中下標為偶數的元素與后面相鄰的下標為奇數的元素兩兩相加,賦給數組b中下標為j的元素,最后返回數組b的個數。所以main函數中,通過調用fun函數,將數組a的元素兩兩相加,得到數組b的各個元素,再通過for循環輸出,結果為:1593。故本題答案為B選項。

2.B

3.C

4.A解析:由于數據的集成性使得數據可為多個應用所共享,特別是在網絡發達的今天,數據庫與網絡的結合擴大了數據關系的應用范圍。數據的共享自身又可極大地減少數據冗余性,不僅減少了不必要的存儲空間,更為重要的是可以避免數據的不一致性。所謂數據的一致性是指在系統中同一數據的不同出現應保持相同的值,而數據的不一致性指的是同一個數據在系統的不同拷貝處有不同的值。

5.C解析:C語言中字符常量是以單引號括起來的單個字符,或以“\\”與三位八進制數值或兩位十六進制數值代替單個字符。

6.C【答案】C

【知識點】C程序的函數

【解析】C程序必須有且只有一個主函數main()。一個C程序可以包含多個不重名的子函數。C程序在書寫時沒有嚴格的縮進要求,語句前的縮進隨意。

7.Breturn語句又稱為返回語句。該語句的格式如下:“return;”和“return(<表達式>);”。其中,return是關鍵字。該語句有兩種格式:不帶返回值格式和帶返回值格式。該語句用在被調用函數中,在被調用函數中執行到該語句時,將結束對被調用函數的執行,并把控制權返回給調用函數,繼續執行調用函數后邊的語句。在帶有返回值的情況下,將return語句所帶的表達武的值返回給調用函數,作為被調用函數的值。在被調用函數中,可以用return語句,也可以不用return語句。如果要求被調用函數有返回值,則一定要用return語句,采用return(<表達式>);格式。如果被調用函數不需要返回值,并且當被調用函數的所有語句執行完后進行返回,則被調用函數可以不用return語句。

8.D調用缸函數后,實參數組名sl傳給形參指針P,P也指向數組sl。m函數的功能是遍歷字符數組中的所有字符,如果某一個字符是空格并且前一個字符是小寫字母的話,就把前一個字符轉換為大寫。程序中語句P[i一1]=P[i—1]一ga’+-A‘;即P[i一1]=P[i一1]一32,意思是將P[i一1]中的字符轉換為大寫。因此D選項正確。

9.B解析:從工程管理解度來看,軟件設計分兩步完成:概要設計和詳細設計。概要設計(又稱結構設計)將軟件需求轉化為軟件體系結構、確定系統級接口、全局數據結構或數據庫模式。

10.D

11.CC語言中,函數名也是一個指針,是函數的人口地址。使函數指針f指向函數fun的入口地址,直接將函數名fun賦給指針f即可。故本題答案為C選項。

12.A

13.(x>10&&x<100)||x<0

14.s=30s=30解析:分析循環條件“m=1,m<=4”,所以循環4次。第1次:n=n*a=2,s=s+n=2;m=2。第2次:n=n*a=4,s=s+n=6;m=3。第3次:n=n*a=8,s=s+n=14;m=4。第4次:n=n*a=16,s=s+n=30。

15.線性結構線性結構解析:數據的邏輯結構是指數據元素之間的邏輯關系,分為線性結構和非線性結構。常見的線性結構有線性表、棧和隊列等,常見的非線性結構有樹、二叉樹等。

16.30x30x解析:本題的參數傳遞屬于值傳遞,所以被調用函數內不能改變調用函數中的數據。

17.12。12。解析:表達式x*=(y++)+(--z)相當于先進行z的自減運算,再執行x=x*(y+z),最后y自加。因此,變量x的值為12,y和z的值分別是4和3。

18.44解析:一維數組元素的定義形式為:數組名[N],則該數組中元素的下限是0,上限是N-1。

19.30253025解析:本題考核的知識點是變量的存儲屬性和算術運算的應用。本題涉及了自動變量、靜態變量和外部變量。外部變量是定義在所有函數之外的變量,本題中inta=5定義了一個外部變量a,它是一個全局變量,即作用域是從定義的位置開始到本文件的結束;靜態變量的存儲空間在程序的整個運行期間是固定的(static),本題函數fun()中staticinta=10定義個一個靜態變量a,此靜態變量a是個靜態的局部變量,即它的值只能在本函數中使用;自動變量是C程序中使用最多的一種變量,它的建立和撤消都是由系統在程序執行過程中自動進行的,auto是自動變量的存儲類別標識符,如果省略auto,系統隱含認為此變量為auto,本題中main()中intc=20定義了一個自動變量c,此自動變量c是個靜態的局部變量.算術運算中a+=b++相當于a=a+b,b=b+1.所以,在第一個ptine('%d',a)中a=a+b=10+20=30,第二個printf('%d',a)中a=a+c=5+20=25,即輸出3025。

20.1717解析:break語句只能在循環體和switch語句體內使用,當break出現在循環體中的switch語句體內時,其作用只是跳出該switch語句體。當break出現在循環體中,但不在switch語句體內時,則在執行break后,跳出本層循環體。而continue語句的作用時結束本次循環,即跳過本次循環中余下尚未執行的語句,接著再一次進行循環的條件判定。本題中首先定義了一個變量x并賦初值15,然后判斷循環條件“x>5&&x<50”,即“x>5&&x<50”,為真,執行循環體.語句“x++;”執行后,x的值變為16,“X/3”的值為5為真,執行其后的語句“x++;”,x的值變為17,執行語句“break”,退出循環,輸出。x的值為17。

21.實體實體解析:E-R模型中,有3個基本的抽象概念:實體、聯系和屬性。在E-R圖中,用矩形框表示實體,菱形框表示聯系,橢圓形框表示屬性。

22.j++a[i]>a[j]或a[j]<a[i]j++\r\na[i]>a[j]或a[j]<a[i]解析:題目要求排序的元素是下標值為偶數的元素,外循環循環4次,i的值分別為0、2、4、6,所以內循環也循環4次,i的值就應為2、4、6、8,在循環體中已經有了對j加1的操作,因此for后括號中的語句應再對j加1,保證下標為偶數。if語句的功能是如果后一個數比前一個數小則交換位置。

23.*(t+4)*(t+4)解析:本題定義了指針變量t,并用數組s的首地址給它賦初值。t+4代表數組第6個元素的地址,*(t+4)是取得該地址中的值即29,而此時并沒有移動指針t。

24.45994599解析:本題是一個陷阱題,以書寫格式來考查考生對if語句的理解.if語句只對緊跟其后的一條語句或語句塊產生作用。因此,題目中兩條if語句只有t=a;和t=b是if的子句。第1條if語句中b<a為假,所以跳過語句t=a;,執行a=c;c=t;后,a=5、b=4、c=99。第2條if語句的判斷條件a<c&&b<c為真,所以后面三條語句都被執行,這三條語句構成一次a和b的內容交換。所以最后輸出的結果是:4599。

25.

解析:該程序功能是實現B=A+Aˊ,即把矩陣A加上A的轉置。其中,所謂矩陣的轉置,是把行中的數據與列中的數據進行對調。解題過程中首先求得已給的矩陣的轉置,然后在循環過程中對矩陣與該矩陣的轉置對應元素求和。

26.*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);解析:該程序功能是將正整數a、b合并形成一個新整數。本題類型首先要考慮整數的位數分離,然后要進行位數合成。也就是先將數字的各位數拆開,改變排列順序后,再組合成新的數字。

27.doublefun(intm){inti;doubles=0.0;for(i=1;i<=m;i++)s=s+log(i);/*計算s=ln(1)+ln(2)+ln(3)+…+in(m)*/returnsort(s);/*對s求平方根并返回*/}doublefun(intm)\r\n{\r\ninti;\r\ndoubles=0.0;\r\nfor(i=1;i<=m;i++)\r\ns=s+log(i);/*計算s=ln(1)+ln(2)+ln(3)+…+in(m)*/\r\nreturnsort(s);/*對s求平方根并返回*/\r\n}解析:首先,題目要求計算從1到m的對數的和,可用從1到m的循環,每次循環都累加求和。該題需要注意之處是,log()函數的形式參數應當為double型變量,而用于循環的基數變量為整數,需要進行強制轉換。在返回的時候求小平方根。

28.voidfun(char*aintninthinte){intij=0for(i=h;i<n-e;i++)/*第一個字母和最后一個字母之間的字符全不刪除*/a[j++]=a[i];a[j]='\0;/*在字符串最后加上結束標記*/}voidfun(char*a,intn,inth,inte)\r\n{\r\ninti,j=0\r\nfor(i=h;i<n-e;i++)/*第一個字母和最后一個字母之間的字符全不刪除*/\r\na[j++]=a[i];\r\na[j]='\\0;/*在字符串最后加上結束標記*/\r\n}解析:注意循環變量i的初值(h)和終止值(n-e),由于h和e分別是a中的前導*和尾部*的個數,n是字符串的長度,所以從a[h])到a[n-e-1]之間的所有字符都要留下,而其他字符均刪除。刪除操作(即留下相應字符)現己由循環完成。

本題技巧部分:

voidfun(char*a,intn,inth,inte)

{a[n-e]='\\0;

strcpy(a,a+h);}

另外,請注意,a(n-e]的作用是使最后一個字母后出現字符串結束符。木程序采用了strcpy()庫函數。

29.

解析:(1)該程序功能是返回低于平均分的人數。它的解題思路可以分解為以下幾步:求總分一求平均分一逐個元素與平均分比較一統計低于平均分的人數。

(2)從已給部分源程序的main主函數開始入手,核心函數fun(score,9,below)中的參數由題目可知,score存放著m個人的成績,below存放低于平均分的分數。另外,根據score的定義,可知9為score數組中元素的個數,傳給函數fun中的參數m。

30.STRECfun(STREC*achar*b){inti;STRECstr={"\0"-1};/*若沒找到摜定的學號在結構體變量中給學號置空串給成績置-1*/for(i=0;i<N;i++)if(strcmp(a[i].numb)==0)/*找到指定學號的學生數據*/str=a[i];returnstr;/*返回學生記錄*/}STRECfun(STREC*a,char*b)\r\n{\r\ninti;\r\nSTRECstr={'\\0',-1};/*若沒找到摜定的學號,在結構體變量中給學號置空串,給成績置-1*/\r\nfor(i=0;i<N;i++)\r\nif(strcmp(a[i].num,b)==0)/*找到指定學號的學生數據*/\r\nstr=a[i];\r\nreturnstr;/*返回學生記錄*/\r\n}解析:本程序一開始先使結構體變量str的學號為空串,成績為-1。題中循環體的功能是搜索所有學生的學號并判斷是否有學號與b所指字符串相同的(即找到),若找到則給str重新賦值(str=a[i]),若沒找到則str成員的值還是原有值(即未找到時學號返回空串,成績返回-1)。

題中已經給出字符串的比較只能用strcmp()函數,而不能直接進行比較,我們在改錯題分析中已經詳細講述了字符串操作函數,如strcmp(),strcat(),strcpy()和strlen()等,希望學習者能熟練掌握。

31.

解析:該程序功能是移動字符串中的內容,第一個字符移動到最后,后面的字符往前移動一位,形成循環左移。移動m個字符的就是循環左移m次。

32.fun(char(*a)[81]intnumchar*max){inti=0;max=a[0];for(i=0;i<num;i++)/*找出最長的一個字符串*/if(strlen(max)<strlen(a[i]))max=a[i];returnmax;/*傳回最長字符串地址*/}fun(char(*a)[81],intnum,char*max)\r\n{\r\ninti=0;\r\nmax=a[0];\r\nfor(i=0;i<num;i++)/*找出最長的一個字符串*/\r\nif(strlen(max)<strlen(a[i]))\r\nmax=a[i];\r\nreturnmax;/*傳回最長字符串地址*/\r\n}解析:做本題之前,我們先應該明白ss是一個指向一維數組的指針變量,max是指向指針變量的指針變量。所以引用時要注意加上*。我們不可能只用max,因為ss[0]是一個數組地址而不是一個指針的地址。

33.doublefun(intm){inti;doubles=1.0;for(i=1;i<=m;i++)s=s-log(i);/*計算s=l-In(1)-In(2)-In(3)-…-In(m)*/return(s*s);/*對s求平方并返回*/}doublefun(intm)\r\n{\r\n\u3000inti;\r\ndoubles=1.0;\r\nfor(i=1;i<=m;i++)\r\ns=s-log(i);/*計算s=l-In(1)-In(2)-In(3)-…-In(m)*/\r\nreturn(s*s);/*對s求平方并返回*/\r\n}解析:首先,題目要求計算1依次減去1到M的對數,可用從1到M的循環,每次循環都減一個數的對數。該題需要注意,log()函數的形式參數應浩如煙海double型變量,用于循環的基數變量為整數,需要進行強制轉換。最后在返回的時求平方。

34.

解析:該程序功能是對題干中給出的多項式的求解。根據題干中給出的數列,首先推出每一項的表達式,然后再對多項式進行累加求和。

35.C解析:數組名是指針常量,是個固定的指針,不能對數組名賦予一個新的地址值,也不能使這個指針常駐量“移動”,指向數組的其他元素。

36.A++a與a++的區別是前者先自加再運算,后者是先運算后自加。

37.C內部靜態變量是始終存在的,當函數被調用退出后,內部靜態變量會保存數據,再次調用該函數時,以前調用時的數值仍然保留著。Fun(a,5)的值是l5,再次調用后slim=15,所以Fun(b,4)=45,s=45+15=60。2021-2022學年廣東省潮州市全國計算機等級考試C語言程序設計模擬考試(含答案)學校:________班級:________姓名:________考號:________

一、單選題(12題)1.有以下程序:#include<stdio.h>intfun(int*a,int*b,intn){inti=0,j=0,sum=0;for(;i<n;i++){sum+=a[i];if((i+1)%2==0){b[j++]=sum;sum=0;}}returnj;}main(){inta[8]={1,0,2,3,5,4,2,1},b[8],k,i;k=fun(a,b,8);for(i=0;i<k;i++)printf(“%d”,b[i]);}程序的運行結果是()。

A.0242B.1593C.1351D.286

2.一個遞歸的定義可以用遞歸過程求解,也可以用非遞歸過程求解,但單從運行時間來看,通常遞歸過程比非遞歸過程()。

A.較快B.較慢C.相同D.無法確定

3.二叉樹中第5層上的結點個數最多為________

A.8B.15C.16D.32

4.下述關于數據庫系統的敘中正確的是______。

A.數據庫系統減少了數據冗余

B.數據庫系統避免了一切冗余

C.數據庫系統中數據的一致性是指數據類型的一致

D.數據庫系統比文件系統能管理更多的數據

5.以下選項中,非法的字符常量是______。

A.'t\'B.'\17'C.\nD.'\xaa'

6.以下敘述中錯誤的是()。

A.一個C程序中可以包含多個不同名的函數

B.一個C程序只能有一個主函數

C.C程序在書寫時,有嚴格的縮進要求,否則不能編譯通過

D.C程序的主函數必須用main作為函數名

7.以下關于return語句的敘述中正確的是()。

A.一個自定義函數中必須有一條return語句

B.一個白定義函數中可以根據不同情況設置多條return語句

C.定義成void類型的函數中可以有帶返回值的return語句

D.沒有return語句的自定義函數在執行結束時不能返回到調用處

8.有以下程序,程序中庫函數islower(ch)用以判斷ch中的字母是否為小寫字母:

程序運行后的輸出結果是()。

A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!

9.在軟件開發過程中,軟件結構設計是描述______。

A.數據存儲結構B.軟件體系結構C.軟件結構測試D.軟件控制過程

10.

11.設有函數說明語句:intfun(int,int);以及函數指針定義語句:int(*f)(int,int);若要使函數指針指向函數fun的入口地址,以下選項中正確的是()。

A.f=fun();B.*f=fun;C.f=fun;D.*f=fun();

12.關于排序算法的以下說法,錯誤的是()

A.歸并排序的平均時間復雜度O(nlogn),最壞時間復雜度O(n^2)

B.堆排序平均時間復雜度O(nlogn),最壞時間復雜度O(nlogn)

C.冒泡排序平均時間復雜度O(n^2),最壞時間復雜度O(n^2)

D.快速排序的平均時間復雜度O(nlogn),最壞時間復雜度O(n^2)

二、2.填空題(12題)13.表示條件;10<x<100或x<0的C語言表達式是【】。

14.下面程序的運行結果是()。##include<stdio.h>main(){inta,s,n,m;a=2;s=0;n=1;m=1;while(m<=4){n=n*a;s=s+n;++m;}printf("s=%d",s);}

15.按照邏輯結構分類,結構可以分為線性結構和非線性結構,棧屬于______。

16.閱讀下列程序,則程序的輸出結果為【】。

#include"stdio.h"

structty

{intdata;

charc;};

main()

{structtya={30,′x′};

fun(a);

printf("%d%c",a.data,a.c);}

fun(structtyb)

{b.data=20;

b.c=′y′;}

17.設x、y、z為整型變量,且x=2,y=3,z=4,當執行以下語句后,x的值是______。

x*=(y++)+(--z);

18.若有定義doublea[5];,則a數組元素下標的上限為______。

19.以下程序運行后的輸出結果是______。

inta=5;

fun(intB)

{staticinta=10;

a+=b++;

printf("%d",A);

}

main()

{intc=20;

fun(C),

a+=C++;

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

}

20.以下程序運行后的輸出結果是______。

main()

{

intx=15;

while(x>10&&x<50)

{

x++;

if(x/3){x++;break;}

elsecontinue;

}

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

}

21.在E-R圖中,矩形表示【】。

22.下面程序的功能是將字符串a下標值為偶數的元素由小到大排序,其他元素不變,請填空。

#include<stdio.h>

main()

{chara[]="labchmfye",t;

inti,j;

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

for(j=i+2;j<9;【】)

if(【】)

{t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);

printf("\n");

}

23.若有如下定義:

int[]={11,24,56,19,29,39),*t=s;

則不移動指針t,且通過指針t引用數組中值為29的元素的表達式是【】。

24.以下程序運行后的輸出結果是______。

main()

{inta=3,b=4,c=5,t=99;

i[(b<a&&a<C)t=a;a=c;c=t;

if(a<c&&b<C)t=b;b=a;a=t;

printf("%d%d%d\n",a,b,c);

}

三、3.程序設計題(10題)25.請編寫程序fun,函數的功能是:實現B=A+Aˊ,即把矩陣A加上A的轉置,存放在矩陣B中。計算結果在main函數中輸出。

例如,輸入下面的矩陣:其轉置矩陣為:

123147

456258

789369

程序輸出:

2610

61014

101418

注意:部分源程序在文件PROGl.C中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

26.函數fun的功能是:將a、b中的兩個兩位正整數合并形成一個新的整數放在c中。合并的方式是:將a中的十位和個位數依次放在變量c的千位和十位上,b中的十位和個位數依次放在變量c的個位和百位上。

例如,當a=45,b=12。調用該函數后,c=4251。

注意:部分源程序存在文件PROGl.C中。數據文件IN.DAT中的數據不得修改。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

27.請編寫函數fun(),它的功能是計算:

s=(ln(1)+ln(2)+ln(3)+…+ln(m))0.5

在C語言中可調用log(n)函數求ln(n)。

例如,若m的值為20,則fun()函數值為6.506583。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<math.h>

doublefun(intm)

{

}

main()

{

clrscr();

printf("%f\n",fun(20));

}

28.假定輸入的字符串中只包含字母和*號。請編寫函數fun(),它的功能是:只刪除字符串前導和尾部的*號,串中字母之間的*號都不刪除。形參n給出了字符串的K度,形參h給出了字符串中前導*號的個數,形參e給出了字符山中最后*號的個數。在編寫函數時,不得使用c語言提供的字符串函數。

例如,若字符串中的內容為****A*BC*DEF*G*******,刪除后,字符串中的內容則應當是A*BC*DEF*G。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,儀在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<stdio.h>

#include<conio.h>

voidfun(char*a;intn,inth,inte)

{

}

main()

{

chars[81],*t,*f;

intm=0,tn=0,fn=0;

printf("Enterastring:\n");

gets(s);

t=f=s;

while(*t)

{t++;m++;}/*m為字符串的長度*/

t--;/*指針t指身字符串尾部*/

while(*t=='*')

{t--;tn++;}

/*指針t指向最后一個字母,tn統計尾部'*'的個數*/

while(*f=='*')

{f++;fn++;}

/*指針f指向第一個字母,tn統計導'*'的個數*/

fun(s,m,fn,tn);

printf("Thestringafterdeleted:\n");

puts(s);

}

29.m個人的成績存放在score數組中,請編寫函數fun,它的功能是:將低于平均分的人數作為函數值返回,將低于平均分的分數放在below所指的數組中。

例如,當score數組中的數據為:10、20、30、40、50、60、70、80、90時,函數返回的人數應該是4,below中的數據應為:10、20、30、40。

注意:部分源程序在文件PROGl.C文件中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

30.學生的記錄由學號和成績組成,N名學生的數據已在主函數中放入結構體數組s中,請編寫函數fun(),它的功能是:函數返回指定學號的學生數據,指定的序號在主函數中輸入。若沒找到指定的學號,在結構體變量中給學號置空串,給成績置-1,作為函數值返回(用于字符串比較的函數是strcmp)。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<stdio.h>

#inctude<stdlib.h>

#defineN16

typedefstruct

{charnum[10];

ints;

}STREC;

STRECfun(STREC*a,char*b)

{

}

main()

{

STRECs[N]={{"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",77},{"GA017",64},

{"GA018",64},{"GA016",72}};

STRECh;

charre[10];

inti,n;

FILE*out;

printf("Theoriginaldata:\n");

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

{if(i%4==0)

printf("In");

/*每行輸出4個學生記錄*/

printf("%s%3d",s[i]num,s[i]s);

}

printf("\n\nEnterthenumber:");

gets(m);

h=fun(s,m);

printf("Thedata:");

printf("\n%s%4d\n",h.num,h.s);

printf("\n");

out=fopen("out80.dat","w");

h=fun(s,"GA013");

fprintf(out,"%s%4d\n",h.num,h.s);

fclose(out);

}

31.請編寫函數fun,函數的功能是:移動字符串中的內容,移動的規則如下:把第1到第m個字符,平移到字符串的最后,把第m+l到最后的字符移到字符串的前部。

例如,字符串中原有的內容為:ABCDEFGHIJK,m的值為3,則移動后,字符串中的內容應該是:DEFGHIJKABC。

注意:部分源程序在文件PROGl.C中。請勿改動主函數main和其他函數中的任何內容,,僅在函數fun的花括號中填入你編寫的若干語句。

32.編寫一個函數,從傳入的num個字符中找出最長的一個字符串,并通過形參指針max傳回該串地址(用****作為結束輸入的標志)。

注意:部分源程序給出如下.

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<string.h>

fun(char(*a)[81],intnum,char*max)

{

}

main()

{

charss[l0][81],*ps;

intn,i=0;

clrscr();

prlntf("輸入若干個字符串");

gets(ss[i]);

puts(ss[i]);

while(!strcmp(ss[i],"****")==0)

/*用****作為結束輸入的標志*/

{

i++;

gets(ss[i]);

puts(ss[i]);

}

n=i;

ps=fun(ss,n,&ps);

print~("\nmax=%s\n",ps);

}

33.請編寫函數fun(),它的功能是計算:s=(1-In(1)-In(2)-In(3)-…-1n(m))2

s作為函數值返回。

在C語言中可調用log(n)函數求In(n)。log函數的引用說明是doublelog(doublex)。

例如,若m的值為15,則fun()函數值為723.570801。

注意:部分源程序給出如下。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入所編寫的若干語句。

試題程序:

#include<conio.h>

#include<stdio.h>

#include<math.h>

doublefun(intm)

{

}

main()

{

clrscr();

printf("%f\n",fun(15));

}

34.請編寫函數fun,其功能是:計算并輸出

例如,在主函數中從鍵盤給n輸入20后,輸出為:s=534.188884。

注意:要求n的值大于1但不大于100。

部分源程序在文件PROGl.C中。

請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。

四、單選題(0題)35.若已定義:inta[9],*p=a;并在以后的語句中未改變p的值,不能表示a[1]地址的表達式是_______。

A.p+1B.a+1C.a++D.++p

五、單選題(0題)36.有以下程序:main{chara=a,b;printf("%c,",++a);printf("%c\n",b=a++):)程序運行后的輸出結果是()。A.b,bB.b,cC.a,bD.a,c

六、單選題(0題)37.有以下程序:

程序執行后的輸出結果是()。

A.45B.50C.60D.55

參考答案

1.B程序中,fun函數的功能是接收兩個數組a、b,以及數組a的元素個數n,然后通過for循環將數組a中下標為偶數的元素與后面相鄰的下標為奇數的元素兩兩相加,賦給數組b中下標為j的元素,最后返回數組b的個數。所以main函數中,通過調用fun函數,將數組a的元素兩兩相加,得到數組b的各個元素,再通過for循環輸出,結果為:1593。故本題答案為B選項。

2.B

3.C

4.A解析:由于數據的集成性使得數據可為多個應用所共享,特別是在網絡發達的今天,數據庫與網絡的結合擴大了數據關系的應用范圍。數據的共享自身又可極大地減少數據冗余性,不僅減少了不必要的存儲空間,更為重要的是可以避免數據的不一致性。所謂數據的一致性是指在系統中同一數據的不同出現應保持相同的值,而數據的不一致性指的是同一個數據在系統的不同拷貝處有不同的值。

5.C解析:C語言中字符常量是以單引號括起來的單個字符,或以“\\”與三位八進制數值或兩位十六進制數值代替單個字符。

6.C【答案】C

【知識點】C程序的函數

【解析】C程序必須有且只有一個主函數main()。一個C程序可以包含多個不重名的子函數。C程序在書寫時沒有嚴格的縮進要求,語句前的縮進隨意。

7.Breturn語句又稱為返回語句。該語句的格式如下:“return;”和“return(<表達式>);”。其中,return是關鍵字。該語句有兩種格式:不帶返回值格式和帶返回值格式。該語句用在被調用函數中,在被調用函數中執行到該語句時,將結束對被調用函數的執行,并把控制權返回給調用函數,繼續執行調用函數后邊的語句。在帶有返回值的情況下,將return語句所帶的表達武的值返回給調用函數,作為被調用函數的值。在被調用函數中,可以用return語句,也可以不用return語句。如果要求被調用函數有返回值,則一定要用return語句,采用return(<表達式>);格式。如果被調用函數不需要返回值,并且當被調用函數的所有語句執行完后進行返回,則被調用函數可以不用return語句。

8.D調用缸函數后,實參數組名sl傳給形參指針P,P也指向數組sl。m函數的功能是遍歷字符數組中的所有字符,如果某一個字符是空格并且前一個字符是小寫字母的話,就把前一個字符轉換為大寫。程序中語句P[i一1]=P[i—1]一ga’+-A‘;即P[i一1]=P[i一1]一32,意思是將P[i一1]中的字符轉換為大寫。因此D選項正確。

9.B解析:從工程管理解度來看,軟件設計分兩步完成:概要設計和詳細設計。概要設計(又稱結構設計)將軟件需求轉化為軟件體系結構、確定系統級接口、全局數據結構或數據庫模式。

10.D

11.CC語言中,函數名也是一個指針,是函數的人口地址。使函數指針f指向函數fun的入口地址,直接將函數名fun賦給指針f即可。故本題答案為C選項。

12.A

13.(x>10&&x<100)||x<0

14.s=30s=30解析:分析循環條件“m=1,m<=4”,所以循環4次。第1次:n=n*a=2,s=s+n=2;m=2。第2次:n=n*a=4,s=s+n=6;m=3。第3次:n=n*a=8,s=s+n=14;m=4。第4次:n=n*a=16,s=s+n=30。

15.線性結構線性結構解析:數據的邏輯結構是指數據元素之間的邏輯關系,分為線性結構和非線性結構。常見的線性結構有線性表、棧和隊列等,常見的非線性結構有樹、二叉樹等。

16.30x30x解析:本題的參數傳遞屬于值傳遞,所以被調用函數內不能改變調用函數中的數據。

17.12。12。解析:表達式x*=(y++)+(--z)相當于先進行z的自減運算,再執行x=x*(y+z),最后y自加。因此,變量x的值為12,y和z的值分別是4和3。

18.44解析:一維數組元素的定義形式為:數組名[N],則該數組中元素的下限是0,上限是N-1。

19.30253025解析:本題考核的知識點是變量的存儲屬性和算術運算的應用。本題涉及了自動變量、靜態變量和外部變量。外部變量是定義在所有函數之外的變量,本題中inta=5定義了一個外部變量a,它是一個全局變量,即作用域是從定義的位置開始到本文件的結束;靜態變量的存儲空間在程序的整個運行期間是固定的(static),本題函數fun()中staticinta=10定義個一個靜態變量a,此靜態變量a是個靜態的局部變量,即它的值只能在本函數中使用;自動變量是C程序中使用最多的一種變量,它的建立和撤消都是由系統在程序執行過程中自動進行的,auto是自動變量的存儲類別標識符,如果省略auto,系統隱含認為此變量為auto,本題中main()中intc=20定義了一個自動變量c,此自動變量c是個靜態的局部變量.算術運算中a+=b++相當于a=a+b,b=b+1.所以,在第一個ptine('%d',a)中a=a+b=10+20=30,第二個printf('%d',a)中a=a+c=5+20=25,即輸出3025。

20.1717解析:break語句只能在循環體和switch語句體內使用,當break出現在循環體中的switch語句體內時,其作用只是跳出該switch語句體。當break出現在循環體中,但不在switch語句體內時,則在執行break后,跳出本層循環體。而continue語句的作用時結束本次循環,即跳過本次循環中余下尚未執行的語句,接著再一次進行循環的條件判定。本題中首先定義了一個變量x并賦初值15,然后判斷循環條件“x>5&&x<50”,即“x>5&&x<50”,為真,執行循環體.語句“x++;”執行后,x的值變為16,“X/3”的值為5為真,執行其后的語句“x++;”,x的值變為17,執行語句“break”,退出循環,輸出。x的值為17。

21.實體實體解析:E-R模型中,有3個基本的抽象概念:實體、聯系和屬性。在E-R圖中,用矩形框表示實體,菱形框表示聯系,橢圓形框表示屬性。

22.j++a[i]>a[j]或a[j]<a[i]j++\r\na[i]>a[j]或a[j]<a[i]解析:題目要求排序的元素是下標值為偶數的元素,外循環循環4次,i的值分別為0、2、4、6,所以內循環也循環4次,i的值就應為2、4、6、8,在循環體中已經有了對j加1的操作,因此for后括號中的語句應再對j加1,保證下標為偶數。if語句的功能是如果后一個數比前一個數小則交換位置。

23.*(t+4)*(t+4)解析:本題定義了指針變量t,并用數組s的首地址給它賦初值。t+4代表數組第6個元素的地址,*(t+4)是取得該地址中的值即29,而此時并沒有移動指針t。

24.45994599解析:本題是一個陷阱題,以書寫格式來考查考生對if語句的理解.if語句只對緊跟其后的一條語句或語句塊產生作用。因此,題目中兩條if語句只有t=a;和t=b是if的子句。第1條if語句中b<a為假,所以跳過語句t=a;,執行a=c;c=t;后,a=5、b=4、c=99。第2條if語句的判斷條件a<c&&b<c為真,所以后面三條語句都被執行,這三條語句構成一次a和b的內容交換。所以最后輸出的結果是:4599。

25.

解析:該程序功能是實現B=A+Aˊ,即把矩陣A加上A的轉置。其中,所謂矩陣的轉置,是把行中的數據與列中的數據進行對調。解題過程中首先求得已給的矩陣的轉置,然后在循環過程中對矩陣與該矩陣的轉置對應元素求和。

26.*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);解析:該程序功能是將正整數a、b合并形成一個新整數。本題類型首先要考慮整數的位數分離,然后要進行位數合成。也就是先將數字的各位數拆開,改變排列順序后,再組合成新的數字。

27.doublefun(intm){inti;doubles=0.0;for(i=1;i<=m;i++)s=s+log(i);/*計算s=ln(1)+ln(2)+ln(3)+…+in(m)*/returnsort(s);/*對s求平方根并返回*/}doublefun(intm)\r\n{\r\ninti;\r\ndoubles=0.0;\r\nfor(i=1;i<=m;i++)\r\ns=s+log(i);/*計算s=ln(1)+ln(2)+ln(3)+…+in(m)*/\r\nreturnsort(s);/*對s求平方根并返回*/\r\n}解析:首先,題目要求計算從1到m的對數的和,可用從1到m的循環,每次循環都累加求和。該題需要注意之處是,log()函數的形式參數應當為double型變量,而用于循環的基數變量為整數,需要進行強制轉換。在返回的時候求小平方根。

28.void

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論