C语言随机生成10个数并存放在数组中,求这十个数的累加和

如题所述

C语言随机生成10个数并存放在数组中,求这十个数的累加和,可参考如下代码:

#include <stdio.h>
void main()
{
int a[10], i, sum = 0;
srand(time(NULL));
for (i = 0; i < 10; ++i){
   a[i] = rand();
   sum += a[i];
}
printf ("累加和为%d\n", sum);
}   

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-23
//参考

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

int main()
{
    int a[10], i, sum = 0;
    srand(time(NULL));
    for (i = 0; i < 10; ++i){
        a[i] = rand();
        printf ("%d ", a[i]);
    }
    for (i = 0; i < 10; ++i){
        sum += a[i];
    }
    printf ("\nsum=%d\n", sum);
    return 0;
}

追问

对不

追答

不全,for后面要加大括号把后面两句扩起来,后面的还不完整。

追问

麻烦帮我就我这个补充依稀

我给你好评

追答#include <stdio.h>

int main()
{
    int i, s = 0, a[10];
    printf ("input 10 numbers:\n");
    for (i = 0; i < 10; i++){
        scanf ("%d", &a[i]);
        s = s + a[i];
    }
    printf ("%d\n", s);
    return 0;
}

追问

谢谢

本回答被提问者和网友采纳
第2个回答  2015-05-23
#include <iostream>
#include <string.h>
#include <algorithm>
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

using namespace std;

int pow(int i,int j)
{
    int sum=1;
    for(int k=1; k<=j; k++)
    {
        sum*=i;
    }
    return sum;
}

int jinzhi_16(char *number)
{
    char *p=number;
    int sum=0;
    int len=strlen(number);
    int i=0;
    int lone;
    while(*p)
    {
        if(toascii(*p)>=65&&toascii(*p)<=70)
        {
            lone=toascii(*p)-55;
        }
        else
        {
            lone=*p-'0';
        }
        sum+=pow(16,len-i-1)*lone;
        i++;
        *p++;
    }
    return sum;
}

int jinzhi_1_10(char *number,int N)
{
    char *p=number;
    int sum=0;
    int len=strlen(number);
    int i=0;
    int lone;
    while(*p)
    {
        lone=*p-'0';
        sum+=pow(N,len-i-1)*lone;
        i++;
        *p++;
    }
    return sum;
}

int is_reverse(char *number)
{
    int len=strlen(number);
    char *save_number=(char *)malloc(sizeof(char) *(strlen(number)));
    strcpy(save_number,number);
    reverse(save_number,save_number+len-1);
    if(strcmp(save_number,number)==0)
    {
        return true;
    }
}

int return_is_16(char *number)
{
    char *p=number;
    while(*p)
    {
        if(toascii(*p)>=65&&toascii(*p)<=91)
        {
            return true;
        }
        *p++;
    }
}

int main()
{
    int N;
    cin>>N;

    getchar();

    char *number=(char *)malloc(sizeof(char) * 32);
    gets(number);

    int num;

    if(N==16)
    {
        num=jinzhi_16(number);
    }
    else
    {
        num=jinzhi_1_10(number,N);
    }
    int count_step=0;
    while(is_reverse(number)!=1)
    {
        int new_number;
        reverse(number,number+strlen(number)-1);
        new_number=sprintf(number,"%s",new_number);
        num=new_number+num;
        sprintf(number,"%d",num);
        count_step++;
        cout<<number;
        if(count_step>=30)
        {
            cout<<"Impossible!";
            return 0;
        }
    }
    cout<<"STEP="<<count_step;
    return 0;
}

追问

好麻烦

第3个回答  2015-05-23
追问

啥意思

追答

你想想

追问

随机咋生成

追答

这个是什么

追问

C语言

追答

是游戏?

追问

好吧

你不懂

追答

对了我想问一下那个卡在哪里刮刮卡

追问

不知道

追答

呵呵

追问

等你答

财富商城里有卡

追答

哦谢谢

追问

不客气

你试下

追答

嗯嗯可以了

你是女的?

相似回答