當前位置:首頁 » 編程語言 » c語言統計二維數組
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言統計二維數組

發布時間: 2022-10-10 19:11:27

① 關於c語言的兩個題目 有關統計字元 和二維數組的

第一題:
#include <stdio.h>
void main()
{
int a[3][4], i, j;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 4; j++)
{
scanf("%d", &a[i][j]);
}
}
int max = a[0][0];
int row = 0;
int col = 0;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 4; j++)
{
if (max < a[i][j])
{
max = a[i][j];
row = i;
col = j;
}
}
}
printf("最大值:%d 行:%d 列:%d\n", max, row + 1, col + 1);
}

第二題:(用ctrl Z結束輸入)
#include <stdio.h>
#include <string.h>
void main()
{
char c;
int cletter=0;
int sletter = 0;
int number=0;
int space=0;
int other=0;
while((c=getchar())!=EOF)
{
if(c>='a'&&c<='z')
sletter++;
else if (c>='A'&&c<='Z')
cletter++;
else if(c>='0'&&c<='9')
number++;
else if(c==' ')
space++;
else
other++;
}
printf("大寫字母數:%d\n",cletter);
printf("小寫字母數:%d\n",sletter);
printf("數字數:%d\n",number);
printf("空格數:%d\n",space);
printf("其他字元數:%d\n",other);
}

② C語言中,求二維數組的每一行的和與平均值

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

intmain()
{
inti=0,j=0,total=0;
floatavr=0;
inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};
for(i=0;i<3;i++)
{
total=0;
for(j=0;j<3;j++)
{
total+=a[i][j];
}
avr=(float)(total/3.0);
printf("sum[%d]aver[%.2f] ",total,avr);
}

return0;
}

sum[6]aver[2.00]
sum[15]aver[5.00]
sum[24]aver[8.00]
Pressanykeytocontinue

③ C語言 二維數組

/***用二維數組保存學生成績****/
#include"stdio.h"
#define M 100
main()
{ int i,a[M][2],n,c=0,m=0,max,min;
printf("請輸入學生記錄數:");
scanf("%d",&n);
/*********輸入每個學生的成績保存在數組中*********/
for(i=0;i<n;i++)
{printf("請輸入第%d學生的記錄\n",i+1);
printf("請輸入語文成績:");
scanf("%d",&a[i][0]);
printf("請輸入數學成績:");
scanf("%d",&a[i][1]);
printf("\n"); }
/********各課總成績********************/
for(i=0;i<n;i++)
{c+=a[i][0];
m+=a[i][1];
}
printf("語文總成績:%d\n",c);
printf("數學總成績:%d\n",m);
printf("語文平均成績:%f\n",(float)(c)/n);
printf("數學平均成績:%f\n\n",(float)(m)/n);
/**********輸出成績單*********/
for(i=0;i<n;i++)
{printf("第%d個學生:語文成績%d 數學成績%d\n",i+1,a[i][0],a[i][1]);
}
getch();
}

④ c語言中 用函數計算二維數組每行之和以及每列之和 怎麼編程

你看的用吧···
#include <stdio.h>
int main()
{
int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j,s1,s2;
printf("請輸入行和列:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
s1=a[i][j]+s;
}
printf("每一列的和分別是:%d\n",s1);
}
printf("\n");
for(j=0;j<3;j++)
{
for(i=0;i<3;i++)
{
s2=a[j][i]+s2;
}
printf("每一行的和分別是:%d\n",s2);
}
}

⑤ 用C語言進行二維數組計數

#include<stdio.h>

void count(int x[100],int a[1000][10]){
int iA,iB;
for(iA=0; iA<100; iA++){
x[iA] = 0;
}//初始化
for(iA=0; iA<1000; iA++){
for(iB=0; iB<10; iB++){
if(a[iA][iB] >= 1 && a[iA][iB] <= 100){
x[a[iA][iB]-1] += 1;//x[?] 記錄 ?+1 出現的次數
}
}
}//遍歷數組
}

⑥ c語言求二維數組中所有元素的和

#include<stdio.h>

int main(void)

{

int ar[3][3]= { {1,2,3},

{4,5,6},

{7,8,9}

};

int num;

int i,j;

int k = 0,sum=0;

int (*ptr)[3];

ptr = ar;

num = sizeof(ar) / sizeof(ar[0]);

printf("num = %d ",num);

printf("%d ",*(*(ptr +0) + 1));

for(i = 0; i < 3 ;i++)

{

for(j = 0 ;j < 3; j++)

{

k += *(*(ptr + i)+j);

//sum += k;

}

}

printf("%d ",k);

return 0;

}

(6)c語言統計二維數組擴展閱讀:

main()函數用法:

大多數UNIX系統對main函數提供了三個參數,原型如下:

intmain(intargc,char*argv[],char*env[]);

其中第三個參數是環境表地址。

ANSIC規定main函數只有兩個參數,而且第三個參數與全局變數environ相比也沒有帶來更多益處,所以POSIX.1也規定應使用environ而不使用第三個參數。

通常用getenv和putenv函數來存取特定的環境變數,而不是用environ變數。

main函數的原型多是下面這種形式:

intmain(intargc,char*argv[]),參數argc代表了輸入參數的個數,char*argv[]表示傳入的參數的字元串,是一個字元串數組。

例如在linux平台下編寫一個小程序:

int main(intargc,char*argv[])

int i;

printf("argc:%d\n",argc);

for(i=0;i<argc;i++)

printf("argv[%d]:%s\n",i,argv[i]);

exit(0);

用gcc編譯後形成一個a.out的可執行的文件,運行a.out,其結果是:

argc=1,argv[0]=」a.out」

運行的程序的文件名,也佔用一個參數位置,也就是說argv數組中的第一個單元指向的字元串總是可執行程序的名字,以後的單元指向的字元串依次是程序調用時的參數。這個賦值過程是操作系統完成的,只需要拿來用就可以了。

在命令行參數的提交中,系統會自動給指針數組後加上一個NULL,所以for(i=0;i<argc;i++)這句也可以換成while(*argv!=NULL)

int main(intargc)省略其它參數的定義也是可以的,這樣運行時候argc就直接返回參數個數,而不返回其它。

運行命令行參數帶有char*argv[]的時候,如果輸入參數帶有空格,應該用雙引號括起來。

⑦ C語言統計二維字元數組里的字母個數怎麼做

#include<stdio.h>
intfun(charar[4][6],charc)
{
intcount=0,i,j;
for(i=0;i<4;++i)
for(j=0;j<6;++j)
if(ar[i][j]==c)
++count;
returncount;
}
intmain()
{
charc,a[4][6];
inti;
printf("輸入4行字元串到數組中: ");
for(i=0;i<4;i++)
gets(a[i]);
printf("輸入要統計的字元: ");
scanf("%c",&c);
printf("字元數:%d ",fun(a,c));
return0;
}

⑧ c語言中如何獲取一個二維數組的行列數

有兩種方式:
1 二維數組的行列數在定義的時候就是確定好的,所以編程人員是知道二維數組的大小以及行列數的。 所以可以直接使用行列數的值。
為方便維護,可以將行列數定義為宏,直接調用對應的宏名作為行列值。

2 動態獲取。
對於type array[A][B];形式的二維數組,可以通過計算sizeof獲取行列數。
sizeof(array[0][0])為一個元素佔用的空間,
sizeof(array[0])為一行元素佔用的空間,
sizeof(array)為整個數組佔用的空間,
於是:
行數 = sizeof(array)/sizeof(array[0]);
列數 = sizeof(array[0])/sizeof(array[0][0]);

⑨ 求C語言編程:調用函數計算二維數組所有元素的平均值

兩個for循環

記錄二維數組的總值

count+=array[i][j]

key記錄數組元素個數

key++;

最後

return

count/key

或:

double avg(int x[10][10])

{

int i,j,sum;

for(i=0;i<10;i++)

{

for(j=0;i<10;j++)

sum+=x[i][j];

}

return sum/((i+1)*(j+1));

}

(9)c語言統計二維數組擴展閱讀:

函數作為另一個函數調用的實際參數出現。這種情況是把該函數的返回值作為實參進行傳送,因此要求該函數必須是有返回值的。例如: printf("%d",max(x,y)); 即是把max調用的返回值又作為printf函數的實參來使用的。在函數調用中還應該注意的一個問題是求值順序的問題。

⑩ C語言作業 請編寫,統計3行4列二維數組中有多少個正數,多少個負數,多少個零,並返回

具體代碼如下:

void main()

{

int a[3][4]; //數組要先賦值才能進行比較

int i,j;

int count_a; //統計正數的個數

int count_b; //統計負數的個數

int count_c //統計零的個數

for(i=0;i<4;i++)

for(j=0;j<5;j++)

(
if(a[i][j]>0)
count_a++;
else if(a[i][j]<0)
count_b++;
else
count_c++;
}

printf("正數的個數是:%d/n",count_a);

printf("負數的個數是:%d/n",count_b);

printf("零的個數是:%d/n",count_c);
}

(10)c語言統計二維數組擴展閱讀:

二維數組在概念上是二維的,但在內存中是連續存放的;換句話說,二維數組的各個元素是相互挨著的,彼此之間沒有縫隙。線性內存中存放二維數組有兩種方式:

1、一種是按行排列, 即放完一行之後再放入第二行;

2、另一種是按列排列, 即放完一列之後再放入第二列。

在C語言中,二維數組是按行排列的。也就是先存放 a[0] 行,再存放 a[1] 行,最後存放 a[2] 行;每行中的 4 個元素也是依次存放。數組 a 為 int 類型,每個元素佔用 4 個位元組,整個數組共佔用 4×(3×4)=48 個位元組。