⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1836854_ac_0ms_24k.c

📁 北大大牛代码 1240道题的原代码 超级权威
💻 C
字号:
# include <stdio.h>
# include <string.h>

void main()
{
 int i, j, k, len1, len2, radio;
 char tmp, num1[41], num2[41], output[100];
 
 scanf("%s%s",num1,num2);
 len1 = strlen(num1);
 len2 = strlen(num2);
 for(i = 0; i < len1/2; i++)
   {
     tmp = num1[i] ;
     num1[i] = num1[len1-i-1];
     num1[len1-i-1] = tmp;
   }
 for(i = 0; i < len2/2; i++)
   {
     tmp = num2[i] ;
     num2[i] = num2[len2-i-1];
     num2[len2-i-1] = tmp;
   }
   memset(output,'0',sizeof(output));
   for(i = 0; i < len1; i++)
    for(j = 0; j < len2; j++)
     {
      radio = ((int)num1[i]-48)*((int)num2[j]-48);
      if((int)(output[j+i])+radio%10-48>=10)
               {
                 output[j+i] = (int)output[j+i]+radio%10-10;
                   k = i+j;
                 while(1)
                  {
                   if(output[k+1] < '9') {output[k+1]++;break;}
                   if(output[k+1] == '9') {output[k+1] = '0';k++;}
                  }
                }
                else output[j+i] += radio%10;
       if((int)(output[j+i+1])+radio/10-48>=10)
               {
                 output[j+i+1] = (int)(output[j+i+1])+radio/10-10;
                   k = i+j+1;
                   while(1)
                   {
                     if(output[k+1] < '9') {output[k+1]++;break;}
                     if(output[k+1] == '9') {output[k+1] = '0';k++;}
                   }
                }
                else  output[j+i+1] += radio/10;

     }
     k = i + j;
     while(output[k] == '0')
      k--;
    for(;k>=0;k--)
    printf("%c",output[k]);
    printf("\n");

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -