在c语言中..怎么判断一个数组 的长度

Python019

在c语言中..怎么判断一个数组 的长度,第1张

需要准备的材料分别有:电脑、C语言编译器。

1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。

2、在test.cpp文件中,输入C语言代码:printf("%d", sizeof(ARRAY) / sizeof(int))。

3、编译器运行test.cpp文件,此时成功求出了数组的长度是4。

判断:数组中的元素,若前一个元素数值 大于下一个元素数值,则 是 错误的排列;

否则,就是正确的排列(即 下一个数大于等于 前一个数)。

假定数组 有 n 个元素,数组元素数值 已知,程序如下:

#include <stdio.h>

int main(){

int a[10]={1,2,3,4,5,6,7,8,9,-10}

int i

int flag=0,n=10 // n是元素个数,flag 是 数组元素顺序是否正确的标志

for (i=0i<n-1i++){

if (a[i]>a[i+1]){ flag=1break} //顺序有错时标志设1,退出循环

}

if (flag==0) printf("Right order !\n")

else printf("Wrong order !\n")

return 0

}

大概看了下需求,楼主stA[6]中保存了等待显示的字符,stB[6]用来保存要显示的数字,table[]中存储了对应数字的转换方式,分为0-9共10个数字.

楼主的问题是如何将stA[6]转换成Int类型数字,然后将table[]中的数值赋值给stB[],最后进行显示.

那么先来讲下如何转换成int,stA[]中定义的成员是int类型,所以这些元素对应的数值其实是ASCII表中的数值,那么查看ASCII表可以知道,'0'对应的数值是48,比如'1' - 48 就等于1,所以这个时候再到table中去取值,就能得到你需要的东西了,用一个循环就能解决,如下:

for (i = 0i <6++i){

stB[i] = table[stA[i] - 48]

}