用C语言求一个大数的平方

#include<stdio.h>
#include<string.h>

char acInString[1024];
char acOutString[1024];

int main(void)
{
    int i, j, iInNum, iNum;
    printf("%s
", "请输入大数:");
    scanf("%s", acInString);
    iInNum = strlen(acInString);

    // 输入字符转数字
    for(i=0; i<1024; i++)
        acInString[i] -= 48;

    // 结果数组清零
    for(i=0; i<1024; i++)
        acOutString[i] = 0;

    // 计算
    for(i=iInNum-1; i>=0; i--)
    {
        for(j=iInNum-1; j>=0; j--)
        {
            iNum = acInString[i]*acInString[j];
            acOutString[i + j + 1] += iNum%10;
            if(acOutString[i + j + 1] > 9)
            {
                acOutString[i + j + 1] = acOutString[i + j + 1]%10;
                acOutString[i + j] += 1;
            }
            acOutString[i + j] += iNum/10;
            if(acOutString[i + j] > 9)
            {
                acOutString[i + j] = acOutString[i + j]%10;
                acOutString[i + j - 1] += 1;
            }
        }
    }

    // 去掉多余的0
    iNum = 0;
    for(i=0; i<iInNum*2; i++)
    {
        if(acOutString[i] != 0)
            break;
        if(acOutString[i] == 0)
            iNum ++;
    }
    if(iNum == iInNum*2)
        iNum -= 1;
    for(i=iNum; i<iInNum*2; i++)
        acOutString[i - iNum] = acOutString[i];

    // 结果数字转字符
    for(i=0; i<iInNum*2; i++)
        acOutString[i] += 48;
    acOutString[iInNum*2 - iNum] = '\0';

    // 输出结果
    printf("大数平方为:
%s
", acOutString);
 
    return 0;
}


是求一个任意变量的平方么

求较完整的源代码..

c语言求任意两个数字a,b中比较大的那个数的平方

根据题意可得如下代码:
#include int fun(int a, int b){ if (a > b)return a*a; else return b*b;}int main(){ int a, b; scanf ("%d%d", &a, &b); printf ("%d
", fun(a, b)); return 0;}

#include
#define max 100
int main()
{
int a;
int i; //判别位数的
int b[max]={0};//存贮位数
int sum=0;
printf("intput your number");
scanf("%d",&a); //a为你输入的数
if(a==0)
printf("无意义~");
else
a=a*a;
for(i=0;a!=0;i++) //存位数
{
b[i]=a%10;
a=a/10;
}
for(int j=0;i!=0;j++,i--) //求和
sum+=b[j];
printf("the end is %d",sum);
return 0;
}

本人觉得用数组就行,便没有使用串。


c语言求平方根
平方直接两个数相乘即可。平方根可以通过这个数本身和0之间进行折半查找的方法,对数据进行计算。当两数相乘大于这个数时,重置最大值;小于这个数时,重置最小值。由于存在除不尽的数,可以加上一个精度进行判断。include<stdio.h>#include<math.h>double squareFun(double x) \/\/ 平方{ return ...

c语言中的平方是怎么表示的?
c语言中的平方是怎么表示的? 直接用两个数(或变量)相乘就是了,比如x*x 另外C语言中,math.h文件中含有乘方(包括开方)的库函数,是pow(x,y) 其中x和y都是双精度浮点(double)型,x是底数,y是指数(如果是小数即为开方)C语言中"或者"是怎么表示的 在C语言中,或运算的符号是|| 例如...

C语言编程,求一个数平方根的近似值
2. 输入需要求平方根的数`N`。3. 进入循环,计算`tmp`为`LG`和`N \/ LG`的平均值。4. 更新`NG`为`tmp`,`LG`为`NG`。5. 判断`NG`和`tmp`的差值是否小于`val`,如果大于,则继续循环,否则输出`NG`作为平方根近似值。通过这种方法,我们能够在C语言编程中实现对一个数求平方根的近似值...

c语言中怎么输出11-20的平方?
C语言大小字母输出

在C语言中,怎样用操作符表示一个数的开方?
表2 - 5列出了C语言中允许的算术运算符。在C语言中,运算符“+”、“-”、“*”和“\/”的用法与大多数计算机语言的相同,几乎可用于所有C语言内定义的数据类型。当“\/”被用于整数或字符时,结果取整。例如,在整数除法中,1 0 \/ 3 = 3。一元减法的实际效果等于用- 1乘单个操作数,即任何...

C语言求一个整数,它加上100后是一个完全平方数,再加上168又是一个完全...
解题过程如下:include<stdio.h> include<math.h> void main(){ int i=1;int n,m;for (i=1;i<100000;i++){ m=sqrt(100+i);n=sqrt(268+i);if(m*m==i+100)if(n*n==i+268)printf("%ld",i);}}1581

c语言输入十个整数,找到其平方最大的
include <stdio.h> include <stdlib.h> int main(){ int a[10],i,square;for(i=0;i<10;i++){ scanf("%d",&a[i]);} square=a[0]*a[0];for(i=1;i<10;i++){ if(square

c语言的sqrt()怎么用
C语言中sqrt()意思是平方根函数,计算一个非负实数的平方根。 在VC6.0中的math.h头文件的函数原型为double sqrt(double number)。sqrt()函数的输入参数不允许为负数,若输入赋值作为函数入参,将得不到正确的结果。因此在调用函数之前,应检查函数输入参数。

C程序 输10个数,求最大值,和,积,平方和,和的平方
printf("请输入10个整数:");for(i=0;i<10;i++) scanf("%d",&num[i]);printf("最大值:%d\\n",max(num));printf("和:%d\\n",he(num));printf("积:%ld\\n",-ji(num));printf("平方和:%ld\\n",pfhe(num));printf("和的平方:%ld\\n",he(num)*he(num));return 0;} ...

用C语言编写程序。求五位数各位数字的平方和为100的最大的五位数。
include <stdio.h>int main(void) {int i,t,s;for(i=99999;i>9999;i--){for(t=i,s=0;t;t\/=10){s+=(t%10)*(t%10);}if(s==100){printf("%d\\n",i);break;}}return 0;}