<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            浙江省計算機二級上機考試試題庫

            時間:2024-10-25 09:21:18 計算機等級 我要投稿
            • 相關推薦

            浙江省計算機二級上機考試試題庫

              2017年3月計算機等級考試就要開考了,同學們準備好了嗎?下面跟yjbys小編一起來看看最新的計算機二級考試題吧!

            浙江省計算機二級上機考試試題庫

              1. 數字處理(切割技術)

              1-1找Armstrong(水仙花)數:371=3*3*3+7*7*7+1*1*1 【這是一個三位的自然數,要點是三位分離】

              #include

              #include

              void main()

              { int i,a,b,c;

              for(i=100;i<=999;i++)

              { a=i/100;

              _______1_______ // b=i0/10;

              c=i;

              if (________2________) // a*a*a+b*b*b+c*c*c = = i

              printf("%d is a Armstrong number!n",i);

              }

              }

              1-2輸入1個整數后,輸出該數的位數。(例:輸入3214則輸出4,輸入-23156則輸出5)。【逐位剝離】

              #include

              void main()

              { int n,k=0;

              scanf("%d",&n);

              while( _____1_____ ){ // n!=0

              k++;

              _____2_____; // n=n/10

              }

              printf("%dn",k);

              }

              1-3求輸入的整數各位數字之和,如輸入234則輸出9,輸入-312則輸出6。【逐位剝離】

              #include

              #include

              void main()

              {

              int n,s=0;

              scanf("%d",&n);

              ______ 1 ______ // if (n<0) n=-n;【符號預處理】

              while(n!=0) {

              ______ 2 ______ // s+=n;

              n=n/10;

              }

              printf("%dn",s);

              }

              1-4調用函數f,將一個整數首尾倒置。例如:若程序輸入12345,則輸出54321;若程序輸入-34567,則輸出-76543。【逐位剝離+逆置技術y=y*10+m 】

              #include

              #include

              long f(long n)

              { long m,y=0; m=fabs(n);

              while(m!=0) {

              y=y*10+m;

              ____1____ // m=m/10 ;

              }

              if(n>=0) return y;

              else _____2_____ // return -y ;

              }

              void main()

              {

              printf("%ldt",f(12345)); printf("%ldn",f(-34567));

              }

              1-5尋找并輸出11至999之間的數m,它滿足m、m*m、m*m*m均為回文數。說明:所謂回文數是指各位數字左右對稱,例如121、676、94249等。滿足上述條件的數如m=11,m^2=121,m^3=1331皆為回文數。

              請編制函數int JSValue(long m)實現此功能,如果是回文數,則函數返回1,反之則返回0。最后把結果寫入到考生文件夾中Paper子文件夾下的新建文件Design2.dat。【本題目的算法與 1-4題相同】

              #include

              #include

              #include

              int JSValue(long m)

              {

              long i,n;

              n=m; i=0; // i中存放的是m的倒置數

              while(n>0)

              { i=i*10+n; n=n/10; }

              if (m = = i) return 1;

              else return 0;

              }

              void main()

              {

              FILE *p;long m;

              p=fopen("design.dat","w");

              for(m=11;m<1000;m++)

              { if(JSValue(m)&&JSValue(m*m)&&JSValue(m*m*m))

              fprintf(p,"%ld ",m); }

              fclose(p); }

              2. 字符串操作(特別,單字符刪除的兩種算法)

              2-1輸入一個小寫字母,將字母循環后移5個位置后輸出。例如:"a"變成"f","w"變成"b"。

              #include

              void main()

              { char c;

              c=getchar();

              if(______1______) // c>='a'&&c<='u'

              c=c+5;

              else

              if (c>='v' && c<='z')

              ______2______ // c=(c-'a'+5)&+'a'; 或 c=c-21; 或 c=c+5-26;

              putchar(c);

              }

              2-2輸入一個字符串,將組成字符串的所有字符先按順序存放到字符串t中,再將字符串中的字符按逆序連接到字符串t后面。例如:輸入"ABCD",則字符串t為"ABCDDCBA"。PP2

              #include

              #include

              void fun(char *s,char *t)

              { int i,sl;

              sl=strlen(s);

              for(i=0;i

              t[i]=s[i];

              for(i=0;i

              t[sl+i]=s[sl-i]; // t[sl+i]=s[sl-1-i];

              t[sl]=" "; // t[2*sl]=’ ’;

              }

              void main()

              { char s[100],t[100];

              scanf("%s",s);

              fun(s,t);

              printf("%s",t);

              }

              2-3設計程序:計算字符串s中每個字符的權重值,所謂權重值就是字符在字符串中的位置值與該字符的ASCII碼值的乘積。位置值從1開始依此遞增。將每個字符的權重值,以格式"%d "寫入到源程序目錄中Paper子目錄下的新建文件design.dat中。

              #include

              #include

              void main()

              { FILE *p; int i,w;

              char *s="we45*&y3r#$1";

              p=fopen("design.dat","w");

              for (i=0;s[i]!=' ';i++)

              { w=(i+1)*s[i];

              fprintf( p,"%d ",w);

              }

              fclose(p);

              }

              2-4調用find函數在輸入的字符串中查找是否出現"the"這個單詞。如果查到返回出現的次數,如果未找到返回0。【本題解在判斷源串里當前連續三個字符是否為"the"這個單詞采用了查找算法】

              #include

              int find(char *str)

              { char *fstr="the";

              int i=0,j,n=0;

              while (str[i]!=' ') 【注:while (str[i+2]!=' ') 更佳】

              {

              for(______1______) // j=0; j<3; j++

              if (str[j+i]!=fstr[j]) break;

              if (______2______) n++; // j>=3 或者 j = = 3

              i++;

              }

              return n;

              }

              void main()

              { char a[80];

              gets(a);

              printf("%d",find(a));

              }

              【注:以下為單字符刪除。出現兩種算法。一是使用strcpy做子串覆蓋,二是逐個保留新串的字符】

              2-5調用函數f,從字符串中刪除所有的數字字符。

              #include

              #include

              #include

              void f(char *s)

              { int i=0;

              while(s[i]!=' '){

              if(isdigit(s[i])) ____1____(s+i,s+i+1); // strcpy

              ___2___ i++;} // else

              }

              void main()

              { char str[80];

              gets(str); f(str); puts(str);

              }

              2-6將字符串s中所有的字符'c'刪除。

              #include

              void main()

              { char s[80];

              int i,j;

              gets(s);

              for(i=j=0; ______1______; i++) // s[i] != ' '

              if(s[i] != 'c')

              { s[j]=s[i];

              ______2______ // j++;

              }

              s[j]=' ';

              puts(s);

              }

              2-7輸入一個字符串,將組成字符串的所有非英文字母的字符刪除后輸出。

              #include

              #include

              void main()

              { char str[256];

              int i,j,k=0,n;

              gets(str);

              n=strlen(str);

              for(i=0;i

              if (tolower(str[i])<'a' || tolower(str[i])>'z') // if (tolower(str[i])>='a' && tolower(str[i])<='z')

              {

              str[n]=str[i]; n++; // str[k]=str[i]; k++;

              }

              str[k]=' ';

              printf("%sn",str);

              3. 最大(小)值

              3-1運行時輸入10個數,然后分別輸出其中的最大值、最小值。PP11

              #include

              void main()

              { float x,max,min; int i;

              for(i=0;i<=10;i++) { // for(i=1; i<=10; i++) {

              scanf("%f",&x);

              if(i=1) { max=x;min=x;} // if(i==1) { max=x;min=x;}

              if(x>max) max=x;

              if(x

              }

              printf("%f,%fn",max,min);

              }

              3-2 對x=1,2,……,10,求f(x)=x*x-5*x+sin(x)的最大值。P3

              #include

              #include

              #define f(x) x*x-5*x+sin(x)

              void main()

              { int x; float max;

              ______1______ // max=f(1);

              for(x=2;x<=10;x++)

              ______2______ // if (f(x)>max) max=f(x);

              printf("%fn",max);

              }

              3-3對x=1,2,…10,求函數f(x)=x-10*cos(x)-5*sin(x)的最大值,并將該數以格式".3f"寫入到考生文件夾中Paper子文件夾下的新建文件Design1.dat。

              #include

              #include

              void main()

              { FILE *p; float f(float),max,x;

              int i; max=f(1);

              for (i=2;i<=10;i++)

              { x=f(i);

              if (max

              }

              p=fopen("Design1.dat","w");

              fprintf(p,"%.3f",max);

              fclose(p);

              }

              float f(float x)

              { float t;

              t=x-10*cos(x)-5*sin(x);

              return t;

              }

              3-4 z=f(x,y)=(3.14*x-y)/(x+y),若x、y取值為區間[1,6]的整數,找出使z取最小值的x1、y1,并將x1、y1以格式"%d,%d"寫入到考生文件夾中Paper子文件夾下的新建文件Design2.dat。P6


            【浙江省計算機二級上機考試試題庫】相關文章:

            計算機二級考試題庫及答案01-21

            wps計算機二級考試題庫10-24

            浙江省計算機二級考試試題10-24

            計算機二級C語言考試上機沖刺試題及答案03-03

            計算機二級C上機考試試題及答案03-05

            浙江省計算機一級考試題庫05-30

            全國計算機二級考試題庫10-24

            2016計算機二級VB上機考試試題題庫03-07

            2017年計算機二級office考試上機考試內容03-24

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看