㈠ C語言數組輸入。。
C語言數組輸入是相同類型的、數量有限的若干個變數通過有序的方法組織起來的一種便於使用的形式。數組屬於一種構造類型,其中的變數被稱為數組的元素。數組元素的類型可以是基本數據類型,也可以是特殊類型和構造類型。
在引用數組中的元素時,採用數組名[下標]的方式,將其中的每一個元素視為一個普通的變數來進行操作。需要注意的是,因為定義的數組arr僅含有9個元素,所以在使用的過程中,下標值不能超過8,否則就會出現下標越界的錯誤。
(1)怎麼給數組輸入數據擴展閱讀:
注意事項:
由於剩餘的元素會自動初始化為 0,所以只需要給第 0 個元素賦值為 0 即可,只能給元素逐個賦值,不能給數組整體賦值。例如給 10 個元素全部賦值為 1。
注意指針變數的當前值:指針變數的值在程序運行過程中可能經常改變,要對此注意。
數組越界:C語言系統是不檢查數組越界的,需要程序員自行檢查。
㈡ 在c語言中,如何在數組中插入一個數
方法為:輸入一個數據x,將數組中的數據與x逐一比較,如果大於x,記錄下數據的下標,然後此數據下標和其後的數據的下標都加一,相當於都向後挪一位,然後將x賦值給數組的那個下標。
#include<stdio.h>
int main()
int i, j, k, x, a[11] =(3, 6, 7, 9, 12, 14, 15, 27, 29, 31) ;
printf("插入前數組的數據是:") ;
for(i=0;i<10;i++)
printf("%4d",a[i] ) ;
printf(" ") ;
printf("請輸入要插入的數據:") ;
scanf("%d",&x) ;
for(i=0;i<10;i++)
if(a[i]>x)
break;
for(j=9; j>=i; j--)
aLj+1] =aLj] ;
a[i]=x;
printf("插入後數組的數據是:") ;
for(i=0; i<11; i++)
printf("%4d",[i] ) ;
return 0;
(2)怎麼給數組輸入數據擴展閱讀:
數組的使用規則:
1.可以只給部分元素賦初值。當{ }中值的個數少於元素個數時,只給前面部分元素賦值。例如:static int a[10]={0,1,2,3,4};表示只給a[0]~a[4]5個元素賦值,而後5個元素自動賦0值。
2.只能給元素逐個賦值,不能給數組整體賦值。例如給十個元素全部賦1值,只能寫為:static int a[10]={1,1,1,1,1,1,1,1,1,1};而不能寫為:static int a[10]=1;(請注意:在C、C#語言中是這樣,但並非在所有涉及數組的地方都這樣,資料庫是從1開始。)
3.如不給可初始化的數組賦初值,則全部元素均為0值。
4.如給全部元素賦值,則在數組說明中, 可以不給出數組元素的個數。例如:static int a[5]={1,2,3,4,5};可寫為:static int a[]={1,2,3,4,5};動態賦值可以在程序執行過程中,對數組作動態賦值。這時可用循環語句配合scanf函數逐個對數組元素賦值。
網路-數組
㈢ 怎樣把數據輸入到定義的new數組里
1、定義一個數組空數組Array,用來儲存用戶輸入的10個字元數據,var nameArray = new Array();。
2、利用js中函數prompt提示用戶輸入字元,直到輸入10個。
3、將每次用戶輸入的字元數據放入數組,利用數組的方法push()方法。
4、利用數組的排序方法Array.sort()對數組排序,根據規則可控制正序還是倒序。
5、遍歷數組,利用document.write()輸出數組元素。
示例:
這里暫時舉例只輸入數字:
function test(){
var nameArray = new Array();//用來存用戶輸入的數據
var name = prompt('請輸入數字','');
while(name != null && name != '' && nameArray.length<10){
nameArray.push(name);//將數據放入數組
name = prompt('請輸入數字','');
}
//對數組進行排序
nameArray.sort(function compareFunction(param1,param2){
return param1 - param2;
});
//遍歷數組,輸入數組元素
for(var i=0;i<nameArray.length;i++){
document.write(nameArray[i] + '');
}
}
㈣ c++如何輸入數組
c++如何輸入數組?在C語言中,有兩個函數可以讓用戶從鍵盤上輸入數組數據,它們分別是gets()和scanf()。scanf()是通過格式控制符%s輸入數組字元串,除了字元串,還能輸入其他類型的數據;gets()是直接輸入數組字元串,並且只能輸入字元串。
但是,scanf()和gets()是有區別的。
scanf()讀取字元串時以空格為分隔,遇到空格就認為當前字元串結束了,所以無法讀取含有空格的字元串。
gets()認為空格也是字元串的一部分,只有遇到回車鍵時才認為字元串輸入結束,所以,不管輸入了多少個空格,只要不按下回車鍵,對 gets() 來說就是一個完整的字元串。換句話說,gets() 用來讀取一整行字元串。
舉個例子:
#include <stdio.h>
int main(){
char str1[30] = {0};
char str2[30] = {0};
char str3[30] = {0};
//gets() 用法
printf("Input a string: ");
gets(str1);
//scanf() 用法
printf("Input a string: ");
scanf("%s", str2);
scanf("%s", str3);
//分別輸出
printf("\nstr1: %s\n", str1);
printf("str2: %s\n", str2);
printf("str3: %s\n", str3);
return 0;
}
運行結果:
Input a string: C C++ Java Python
Input a string: PHP JavaScript
str1: C C++ Java Python
str2: PHP
str3: JavaScript
第一次輸入的字元串被 gets() 全部讀取,並存入 str1 中。第二次輸入的字元串,前半部分被第一個 scanf() 讀取並存入 str2 中,後半部分被第二個 scanf() 讀取並存入 str3 中。
注意,scanf() 在讀取數據時需要的是數據的地址,這一點是恆定不變的,所以對於 int、char、float 等類型的變數都要在前邊添加&以獲取它們的地址。但是在本段代碼中,我們只給出了字元串的名字,卻沒有在前邊添加&,這是為什麼呢?因為字元串名字或者數組名字在使用的過程中一般都會轉換為地址,所以再添加&就是多此一舉,甚至會導致錯誤了。
就目前學到的知識而言,int、char、float 等類型的變數用於 scanf() 時都要在前面添加&,而數組或者字元串用於 scanf() 時不用添加&,它們本身就會轉換為地址。讀者一定要謹記這一點。
至於數組名字(字元串名字)和地址的轉換細節,以及數組名字什麼時候會轉換為地址。
以上就是c語言數組怎麼輸入?的詳細內容,更多請關注php中文網其它相關文章!