二維數組怎麼比較大小?
怎樣比較二維數組裡的數的大小
不是有警告,是有錯誤啊,你不能把max=str+i,這樣的二維數組的賦值是不允許的,你最好吧max聲明為一個字符數組,然後用strcpy來實現str+i向max的轉化,那樣應該就不會出現錯誤了,另外strcmp等一系列這樣的函數的形參都是char *類型的,你吧把二維數組的一維賦給它,就像strcmp(str+i,max); 是不可以的~~雖然它是一個字符串,但是不能實現自動類型轉換
我給你寫了一個,可以的,你看看~~
#include
#include
#define N 20
int main()
{
char str[5][N];
int i,j;
for(i=0;i<5;i++)
{
printf("Please input %d word: ",i+1);
scanf("%s",&str[i]);
}
for(i=0;i<4;i++)
for(j=i;j<5;j++)
{
if(strcmp(str[i],str[j])<0)
{
char change[N];
strcpy(change,str[i]);
strcpy(str[i],str[j]);
strcpy(str[j],change);
}
}
for(i=0;i<5;i++)
{
printf("%s ",str[i]);
}
printf("\n");
return 0;
}
如何比較二維數組的元素大小
聲明一個二級指針**p,當你知道了“大小”的時候,先給p動態分配存放指針的內存空間,然後再給*p分配存放元素的內存空間。釋放時先將各個*p釋放,再釋放p。
二維數組 比較大小
第一列應該是 a[0][0-2]
第二列應該是 a[1][0-2]
實際就是比較a[0][0-2]誰大
實際就是比較a[1][0-2]誰小
不會嗎?
我再給你寫個比較函數
void Max(int &a, 礌nt &b)
{
int temp = 0;
if(a
{ temp = b; b = a; a = temp;}
}
將大數取到放在a裡面
同理也可以寫了Min函數
void Min(int &a, int &b)
{
int temp = 0;
if(a > b)
{ temp = b; b = a; a = temp;}
}
如何求解二維數組的第一維大小?
答案是B。計算方法是:用數組的元素個數除以第二維的數字,若有餘數,則商+1就是第一維的大小,沒有餘數商就是第一維的大小。比如你的例子,9/4=2餘1,則2+1=3,第一維的大小就是3.剩餘的沒設定的,系統會根據數據類型自動賦值
c語言二維數組比較大小
if(i==j==0){max=x;min=x;}
中的
i==j==0
等價於
(i==j)==0
所以當i=1 j=0時(即倒數第二輪)
其值為0==0 即1
所以 max和min被重新賦值了
這樣只能比較最後兩個
應該改成
if(i==0&&j==0){max=x;min=x;}
其他不變
用c++的二維數組寫冒泡程序,怎樣比較兩個二維數組之間的大小?怎樣寫?如下圖,就分析冒泡程序就行了
一般做法是用多個數組存放不同數據,或者使用結構數組存放
排序是建立一個索引,用索引進行排序,而原數據順序不會改變,這是數據庫的做法
索引肯定是針對其中一組數據進行排序的,比如總分。
C語言獲取二維數組的大小 5分
不可以,連C內建的數組指針傳入都要求明確除了第一維之後任意一維的大小,比如這樣
test(int a[][3][4])
java中兩個二維數組的比較
import java.util.ArrayList;
import java.util.List;
public class KK {
public static void main(String[] args) {
// Object[][] actualResult = new Object[10][1];
// String[][] expectedResult = new String[5][1]; 這兩句就相當於
Object[][] actualResult = { { "1","11" }, { "2","22" }, { "3","33" }, { "4","44" },
{ "5","55" }, { "6","66" }, { "7","77" }, { "8","88" }, { "9","99" }, { "10","1010" } };
String[][] expectedResult = { { "1","11" }, { "2","22" }, { "3","33" }, { "4","44" },
{ "5","55" } };
List list1 = new ArrayList();
List list2 = new ArrayList();
for (int i = 0; i < actualResult.length; i++) {
for(int j=0;j
list1.add(actualResult[i][j]); // 它的第二維只有一個所以這裡就不要用循環去取了
}
for (int i = 0; i < expectedResult.length; i++) {
for(int j=0;j
list2.add(expectedResult[i][j]);
}
System.out.println(list1.containsAll(list2));
}
}
C語言中,怎樣可以將一維數組和二維數組進行對比?
char a[]="abc123";
char b[2][]={"abc123","def456"};
tag=0;
for(i=0;i<2;i++)
if(strcmp(a,b[i])==0) {tag=1;printf("1");break;}
if(tag==0) printf("0");