c語言數組求平均值
1. 輸入10個數,放在一維數組a中,求平均數 c語言
先定義float類型數組,鄭搏依次輸入10個數並伍衫計算累加和,最後輸出平均值。
參考代碼:
#include<stdio.h>
intmain()
{
inti;
floatavg=0.0,a[10];
for(i=0;i<10;i++)
{
scanf("%f",&a[i]);
avg+=a[i];
}
printf("%.2f",avg/10);喊橘祥
return0;
}
/*
運行結果:
1234567890
4.50
*/
2. 用C語言求二維數組所有元素的平均值並輸出
由於沒給出詳細的問題,我就用三維數組做了一下,其實題目很簡單,直接用for-for的雙重循前孫環實現塌喊就可以了。首先是二維數組的輸入,然後就是求和,求平均值。
思想有了,做其他的就很簡單了,團悔野相信樓主會完成的o(∩_∩)o
【代碼實現】
#include<stdio.h>
int main()
{
int i,j,a[3][3];
int sum=0;
float avg;
printf("請輸入一個二維數組:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
for(i=0;i<3;i++)
for(j=0;j<3;j++)
sum+=a[i][j];
printf("%d",sum);
avg=sum/6.0;
printf("元素的平均值為%f",avg);
}
3. c語言求n個數的平均數
求n個數平均數源程序如下:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main(void)
{
int a[100] = { NULL };//初始化數組元素
int i = 0, n;//定義循環變數和正整數變數n
float sum = 0.0;//定義和變數為float型,注意計算的數據類型
float average = 0.0;//定義平均數變數為float型,注意計算的數據類型
printf("Please input n (n<100) :");
scanf("%d", &n);//輸入正整數n
printf("Please input %d integers:", n);//提示輸入幾個正整數
for (i = 0; i < n; i++)//循環輸入元素
{
scanf("%d", &a[i]);//輸入整形變數
sum += a[i];//循環輸入的時候同時進行求和
}
//for (i = n - 1; i >= 0; i--)
printf("the a[n] number: ");//倒敘輸出數組元素
for (i = 0; i < n; i++)//循環輸入元素
printf("%d ", a[i]);//倒敘輸出數組元素
printf("
");
average = sum / (float)n;//注意不同類型之間的計算,這里加了類型強制轉換
printf("averge=%.2f
", average);//輸出平均數
return 0;
}
程序運行結果如下:
(3)c語言數組求平均值擴展閱讀:
其他實現方式:
#include <iostream>
int main()
{
int i;
double sum = 0;
int count = 0;
scanf("%d", &i);
while (i != -1)
{
sum = sum + i;
count++;
scanf("%d", &i);
}
printf("%.2f", sum / count);
return 0;
}
4. C語言一維數組求平均值
解決方案1:
if(i%3==2)cout<<' ';
解決方案2:
return av/(float)n;
解決方案3:
#include<iostream>
using namespace std;
void input(int a[],int n)
{
for(int i=0;i<n;i++)cin>>a<i>;
}
void output(int a[],int n)
{
for(int i=0;i<n;i++)
{
cout<<a<i>;
if(i%3==2)cout<<' ';
}
}
float average(int a[],int n)
{
float av=0;
for(int i=0;i!=n;i++)av+=a<i>;return av/(float)n;
}
int main(){
const int n=10;
int a[n];
input(a,n);
output(a,n);
cout<<"平均值="<<average(a,n)&清帶答lt;<' ';
return 0;
}
(4)c語言數組求平均值擴展閱讀:
include用法:
#include命令預處理命令的一種,預處理命令可以將別的源代碼內容插入到所指定的位置;可以標識出只有在特定條件下才會被編譯的某一段程序代碼;可以定義類似標識符功能的宏,在編譯時,預處理器會用別的文本取代該宏。
插入頭文件的內容
#include命令告訴預處理器將指定頭文件的內容插入到預處理器命令的相應位置。有兩種方式可以指定插入頭文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含標准庫頭文件或者實現版本所提供的頭文件,應該使用第一種格式。如下例所示:
#include<math.h>//一些數學函數的原型,以及相關的類型和宏
如果需要包含針對程序所開發的源文件,則應該使用第二種格式。
採用#include命令所插入的文件,通常文件擴展名是.h,文件包括函數原型、宏定義和類型定義。只要使用#include命令,這些定義就可被任何源文件使用。如下例所示:
#include"myproject.h"//用在當答慧前項目中的函數原行臘型、類型定義和宏
你可以在#include命令中使用宏。如果使用宏,該宏的取代結果必須確保生成正確的#include命令。例1展示了這樣的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
當上述程序代碼進入預處理時,如果_DEBUG_宏已被定義,那麼預處理器會插入myProject_dbg.h的內容;如果還沒定義,則插入myProject.h的內容。
5. c語言計算平均值
1、首先新建一個求數組內所有元素的平均值項目。
6. c語言 求一維數組a中所有元素的平均值。 急 在線等。 拜託拜託
int a[5] = {1,2,3,4,5}
intsum = 0;
double average = 0;
for(int i =0;i<a.size;i++){
sum+= a[i];
}
average=sum/(sizeof(a)/sizeof(double));
printf("一維數組a中所有元素的平均值:%lf\n",average);
(6)c語言數組求平均值擴展閱讀:
for循環語句形式為( ; ; ),小括弧里第一個「;」號前為一個為不參與循環的單次表達式,其可作為某一變數的初始化賦值語句, 用來給循環控制變數賦初值; 也可用來計算其它與for循環無關但先於循環部分處理的一個表達式。
執行的中間循環體可以為一個語句,也可以為多個語句,當中間循環體只有一個語句時,其大括弧{}可以省略,執行完中間循環體後接著執行末尾循環體。
執行末尾循環體後將再次進行條件判斷,若條件還成立,則繼續重復上述循環,當條件不成立時則跳出當下for循環。
7. C語言一維數組求平均值
#include
"圓搏羨stdio.h"
void
main()
{
int
i,n,a[10],av;
n=10;
//n沒有賦值下面就直接使用
for(i=0;i<n;i++)
scanf("銀飢%d",&a[i]);
//這里缺少&
for(i=0;i<n;i++)
{
if
(i%3==0)
printf("\橘拍n");
printf("%d",a[i]);
}
av
=0;
//必須初始化,否則結果不可預料。
for(i=0;i!=n;i++)
av+=a[i];
printf("av=%f\n",av*1.0/10);
//輸出平均值,不是輸出和。
}
運行效果:
1
2
3
4
5
6
7
8
9
10
123
456
789
10av=5.500000
8. C語言求數組平均值
1、c=sum/10;
錯了。不是4個數求平均值嗎?應該c=sum/4;
2、printf("c
is%d");裡面沒有輸出表列。應該printf("c
is%d",c);
3、如果不能整除,平均值c,和變數sum變數應該是實數型,float
c,sum;因為10/4=2,所以sum/4中的sum變數最好也是實數型。
9. C語言數組求平均值怎麼寫程序
因為你在main()中的數組a 和你在函數ave(int x)中的數組a並不是同一個,這個是變數的作用域導致的
計算均值的時候,實際上用的是在ave(int x) 中新定義沒有初始化的數組a
所以返回的均值就是隨機數
改正:
#include <stdio.h>
float a[2][3], ave(int x);
void main()
{
int i, j;
for (i = 0; i < 2;i++)
for (j = 0; j < 2; j++)
scanf("%f", &a[i][j]);
for (i = 0; i < 2; i++)
a[i][2] = ave(i);
for (i = 0; i < 2;i++)
for (j = 0; j < 3; j++)
{
printf("%.1f ", a[i][j]);
if (j == 2) printf("\n");
}
}
float ave(int x)
{
float m = 0, z;
int n;
for (n = 0; n < 2; n++)
m = m + a[x][n];
z = m / 2;
return z;
}
希望對你有幫助