華中科技大學_2010___考研電腦_複試上機

來源:互聯網
上載者:User

標籤:style   blog   io   color   os   ar   使用   for   sp   

1,同位

題目描寫敘述:

輸入一個字串,然後對每一個字元進行奇數同位,最後輸出校正後的位元(如‘3’,輸出:10110011)。

輸入:

輸入包含一個字串,字串長度不超過100。

輸出:

可能有多組測試資料,對於每組資料,
對於字串中的每個字元,輸出按題目進行同位後的數,每個字元校正的結果佔一行。

例子輸入:
33a
例子輸出:
101100111011001101100001

總結:感覺還好,可是以下再貼出一份代碼,網上找的,感覺很有意思,直接使用異或運算即可。

#include<iostream>#include<string>using namespace std;void odd_verify(char a){int num[8]={0,0,0,0,0,0,0,0};int i=0,j=0;while(a){if(a%2 == 1) j++;num[i++] = a%2;a=a>>1;}if(j%2 != 1){num[7] = 1;}for(j=7;j>0;j--){cout<<num[j];}cout<<num[0]<<endl;}int main(){string str;int i,len;while(cin>>str){len=str.length();for(i=0;i<len;i++){odd_verify(str[i]);}}return 0;}


#include<stdio.h>#include<string.h>int main(){    char str[110];    while(~scanf("%s",&str))    {              for(int i=0;str[i];i++)       {          int num[8];          memset(num,0,sizeof(num));//注意memset所處的位置           int j=0;          while(str[i])          {            num[j++]=str[i]%2;            str[i]=str[i]/2;          }          num[7]=num[7]^num[6]^num[5]^num[4]^num[3]^num[2]^num[1]^num[0]^1;//異或運算子^           for(int j=7;j>=0;j--)             if(j==0)printf("%d\n",num[j]);             else printf("%d",num[j]);       }    }      return 0;  }


2,加法器

題目描寫敘述:

實現一個加法器,使其可以輸出a+b的值。

輸入:

輸入包含兩個數a和b,當中a和b的位元不超過1000位。

輸出:

可能有多組測試資料,對於每組資料,
輸出a+b的值。

例子輸入:
2 610000000000000000000 10000000000000000000000000000000
例子輸出:
810000000000010000000000000000000

總結:寫的不好,實現了。

#include<iostream>#include<string>using namespace std;#define max_n 1020int main(){string str1,str2;int i,j,s,jin;int len1,len2;while(cin>>str1 && cin>>str2){int num1[max_n] = {0};int num2[max_n] = {0};int sum[max_n] = {0};len1 = str1.length();len2 = str2.length();j=0;for(i=len1-1;i>=0;i--){num1[j++] = str1[i] - ‘0‘;}j=0;for(i=len2-1;i>=0;i--){num2[j++] = str2[i] - ‘0‘;}jin=0;for(i=0;i<max_n;i++){s=num1[i] + num2[i] + jin;sum[i] = s % 10;jin = s / 10;}for(i=max_n - 1;i>=0;i--){if(i != 0){if(sum[i] != 0){for(j = i;j >= 0;j--){cout<<sum[j];}break;}}else{cout<<sum[0];}}cout<<endl;}return 0;}






華中科技大學_2010___考研電腦_複試上機

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.