int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g; 数值4的表达式

为啥是a['d'-c]

在ASCII码中,'d'是字符'a'之后的第3个字符,因此 'd'-'a' 等于数值3,而a[3]就是数组a的第四个元素……
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-01
不是“数值4的表达式 是a['d'-c]”

而是“a['d'-c] 表达式的值是数值4”
因为'd'-c='d'-'a'=3
a[3]的值就是4。本回答被网友采纳

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g; 数值4的...
在ASCII码中,'d'是字符'a'之后的第3个字符,因此 'd'-'a' 等于数值3,而a[3]就是数组a的第四个元素……

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g; 数值4的...
所以'd' - c=100 - 97=3 所以就有了4的表达式为a ['d' - c ]

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i; f
相当于p[3]+2 因为p[3]指向a[9],故p[3][2]指向a[11]a[11]所对应的值是12 ,故输出12

c语言程序设计的问题
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};A.1,12 B.0,11 C.1,11 D.0,12 2. 若有以下数组说明,则i=10;a[a[i]]元素数值是(c )。int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.10 B.9 C.6 D.5 3. 若有以下说明,则数值为4的表...

c语言——关于指针的题目
{ int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i;for(i=0;i<4;i++)p[i]=&a[i*3]; \/\/分别把a[0]、a[3]、a[6]、a[9]的地址赋值给 p[0],p[1],p[2],p[3]printf("%d\\n",p[3][2]);因为赋值的时候是把a[9]赋值给p[3]了,输出 p[3][2],...

定义数组"int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}",则数组a中最大最...
最大的是12,下标是11,最小1,下标0,答案就是11 0,从答案看选择B

#include〈stadio.h〉 main(){ int a[12]={1,2,3,4,5
不能使用中文标点。改正标点后,程序已经运行通过,运行答案是12。include<stdio.h> \/*这里原来多了一个a*\/ main(){int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i;for (i=0;i<4;i++)p[i]=&a[i*3];printf("%d\\n",p[3][2]);} ...

...int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; int (*p)[4...
所以一共向后移动了9个单位,即得出运行结果10!要想正确表达a[1][2],应该是(*(ptr+1))[2],数组的运算符[ ]比间值运算符*的优先级高,(*(ptr+1))[2]表示a向后移动一个单位即三个Int,此时ptr指向4,再往后移动2个Int指向6。其实遇到这类问题画内存结构图比较容易理解了 ...

数组A={1,2,3,4,5,6,7,8,9,10,11,12,13},将A分成3组,每组中的s数量最少...
void main(){ int a[]={1,2,3,4,5,6,7,8,9,10,11,12};\/\/对数组a初始化 int *p[3];\/\/定义指针数组,每一个元素都是指针 int m;\/\/定义变量m for(m=0;m<3;m++)\/\/循环三次 p[m]=&a[m*4];\/***开始分析循环语句 m=0时,p[0]=&a[0] ,p[0]指向a[0]m=1时,p...

若有定义:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p[3],m;
结果为11。int *p[3]表示数组p是一个指针数组,每个元素是一个指向整型数据的一个指针。for(m=0;m<3;m++)表示有三次循环,m分别是0,1,2。p[m]=&a[m*4]执行后,将a[0]、a[4]、a[8]的地址分别赋予给p[0]、p1[1]、p[2], 即指针p[0]、p1[1]、p[2]指向a[0]、a[4]...

相似回答