Ⅰ c語言數組的編寫
不行,你這個數組的大小不能在程序里通過計算得出來,必須一開始就定義好,想改也只有程序開頭用define,不可以讓用戶動態輸入計算。
double TINA,T;這一句你定義的TINA只是一個數而不是數組,所以一定要有後面的才可以定義出數組。
for(i=1;i<=2;i++)
for(j=1;j<=2;j++)數組下表是從0開始的而不是1,你要麼改這里,要麼改最後一句為TINA[i-1][j-1]
printf("%s","輸入溫度");循環到這里就結束了,所以應該把這句和下面用大括弧放在一起。
TINA[i][j]=scanf("%lf",&T);
即使你改了還是不可以達到目的~~~
Ⅱ c語言數組規則
1.1 一維數組的定義、初始化和引用
1.一維數組的定義方式為:
類型說明符 數組名[常量表達式]
(1)數組名的命名方法與變數名相同,遵循標識符命名規則;
(2)數組是用方括弧括起來的常量表達式,不能用圓括弧;
(3)常量表達式表示數組元素的個數,即數組的長度,數組的下標從0開始,下標的最大值為:常量表達式-1;
(4)常量表達式中可以包括常量和符號常量,不能包括變數。
可以用賦值語句或輸入語句使數組中的元素得到值,但要佔用運行時間。可以使數組在運行之前初始化,即在編譯階段使之得到初值。
2.對數組初始化可以用以下方法實現:
(1)在定義數組時對數組元素賦以初值。如:
static int a[10]={0,1,2,3,4,5,6,7,8,9};
經過上面的定義和初始化後,a[0]=0,a[1]=1,…,a[9]=9。
(2)初始化時可以只對一部分元素賦初值。例如:
static int a[10]={0,1,2,3,4};
定義的數組有10個元素,但只對其中前5個元素賦了初值,後5個元素初值為0。
(3)如果想使一個數組的元素值全部為0,可以用下面的方法:
static int a[10]={0,0,0,0,0,0,0,0,0,0};
不能用:
static int a[10]={0*10};
如果對static型數組不賦初值,系統會對定義的所有數組元素自動賦以0值。
(4)在對全部數組元素賦初值時,可以不指定數組長度。
3.一維數組的引用方法是:
C語言規定不能一次引用整個數組,引用時只能逐個元素引用,數組元素的表示形式為:
數組名[下標]
下標可以是整型常量或整型表達式。如:
a[0]=a[5]+a[7]-a[2*3];
Ⅲ c語言編寫的針對數組數據,構建試程序,得到程序的運行時間。哪位高手幫我看一下程序的問題
存在一種錯誤,就是double強制轉換格式不對
time[0]=double (end-begin)/CLOCKS_PER_SEC/M;
上面寫法錯誤,應該用(double),改成下面寫法,就不會輸出全是0
time[0]=(double) (end-begin)/CLOCKS_PER_SEC/M;
Ⅳ C語言裡面的數組都是在編譯的時候就分配好內存的嗎
編譯的時候 只是確定了內存的大小
實際分配還是在運行時分配的
否則 無數的C語言程序 每一個都分配一段內存
卻不運行 電腦受不了的
Ⅳ C/C++里定義大數組花費時間嗎(就是說對於大數組,定義和聲明花費的運行時間一樣多嗎)
c/c++像上面這樣創建一個新數組時,是不會初始化的,之前這段內存里存了什麼還是什麼,所以花費的時間應該只是把xxx指向了這段內存(具體的就不清楚了,還是去一些有大神存在的c++論壇去問比較好)。而且即使你初始化了xxx[MAX]={0},這種對內存的操作是非常快的,所以需要擔心的只是數組長度是不是在限制范圍內以及選擇數組好還是new一段內存好這些問題,對內存的操作時間都不是問題。
Ⅵ C語言數組編譯問題~~~~~
void Printfnumber(int b[],int n){ int i; for(i=0;i<n;i++) { printf("%d\t",&b[i]); //去掉&就OK!! } printf("\n");
Ⅶ C語言中哪些佔用編譯時間,那些佔用運行時間
運行時間是程序運行的時間 編譯時間是程序翻譯成二進制碼的時間
Ⅷ 使用C語言如何將一個時間數組轉換為UTC時間
應該是將時間結構體轉為UTC時間。可以使用asctime函數。
1、asctime函數:
原型:char* asctime (const struct tm * timeptr);
功能:把timeptr指向的tm結構體中儲存的時間轉換為字元串;
頭文件:time.h;
返回值:一個固定格式的字元串。字元串格式為:Www Mmm dd hh:mm:ss yyyy。其中Www為星期,Mmm為月份,dd為日,hh為時,mm為分,ss為秒,yyyy為年份。
2、常式:
#include<time.h>
#include<stdio.h>
intmain(){
time_trawtime;
structtm*timeinfo;
time(&rawtime);
timeinfo=localtime(&rawtime);//使用localtime函數把秒數時間rawtime轉換為本地時間以tm結構體保存,並把tm結構體地址儲存到timeinfo當中
printf("當前日期為:%s",asctime(timeinfo));//使用asctime函數把tm結構體中儲存的時間轉換為字元串,並輸出
return0;
}
Ⅸ C語言的數組編譯問題(急!)
#include "stdio.h"
main()
{ int a[10]={6,9,11,13,18,21,22,2,5,10};
int i,t,j,x=0;;
printf("the ten :");
for(i=0;i<10;i++)
printf("%3d",a[i]);
printf("input a number:\n");
scanf("%d",&t) ;
for(i=0;i<10;i++)
{
if(t==a[i])//應該是等於而不是賦值
{for(j=i;j<10;j++)
a[j]=a[j+1];
x++;//表示刪除元素的個數
}
}
for(i=0;i<10-x;i++)
printf("%3d",a[i]);
}
有問題聯系
Ⅹ C語言數組編譯
輸入:
for (i = 0; i < 5; i++)
for (j = 0; j < 5; j++)
scanf("%d", &a[i][j]);
加n處理
for (i = 0; i < 5; i++)
for (j = i; j < 5; j++)
a[i][j] += n;
輸出
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5; j++)
printf("%d ", a[i][j]);
printf("\n");
}
其他代碼自己補吧