谁知道这个C语言题的输出结果。最好有具体步骤。

作者&投稿:艾希 (若有异议请与网页底部的电邮联系)
菜鸟请教这道C语言题输出结果是什么,具体步骤怎么计算,麻烦讲解下,谢谢~

初始i=3
执行j=i++后,j=3,i自加一次即i=4
最后输出,即 i=4,j=3,输出
4,3

答案是6.过程:建立一个结构体类型,定义一个a的结构体赋值x=5,y=7。指针p指向a的地址,p->x=5,++5=6.
输出12,13.定义了一个结构体struct a m,赋值m={21,23},把结构体m的指针调用过去,在调用函数中把m的指针用新的结构体u的地址进行赋值,使m指向u的地址,故输出u的值。
580,550.这题主要注意地址的改变。S[1]的地址从一开始就没改变过,故s[1].Score=580.将s的地址赋值给p,两个for循环,将p指向的数据通过改变p的地址来进行小到大的排序。结果为550.
望采纳!!!

#include<stdio.h>
main()
{
char ch[2][5]={"6937","8254"},*p[2];
int i,j,s=0;

for(i=0;i<2;i++)
p[i]=ch[i];
//以上实现了p[0]="6937" , p[1]="8254"

for(i=0;i<2;i++)
for(j=0;p[i][j]>'\0';j+=2)
s=10*s+p[i][j]-'0';
//以上是个循环嵌套,第一层循环再次,第二层循环再次
//i=0时,
//s1=10*0+p[0][0]-'0'=0+'6'-'0'=6;
//s2=10*s1+p[0][2]-'0'=10*6+'3'-'0'=63;
//p[0][4]='\0',结束第一轮循环

//i=1时,
//s3=10*s2+p[1][0]-'0'=10*63+'8'-'0'=638;
//s4=10*s3+p[1][2]-'0'=10*638+'5'-'0'=6385;
//p[1][4]='\0',结束第二轮循环
printf("%d\n",s);
//s=6385
}

多了一个'{',导致编译出错

输出结果为6385
s = 10*s + p[i][j]-'0';的结果是相当于在s后面合并一个10进制的数,比如,如果s = 12, (p[i][j] -'0') = 3,那么s = 10*s + 3的结构就是 12 * 10 + 3 = 123,是不是就是等于12 和3合并起来。这是这个程序中最核心的部分。
但是这个程序在循环的时候是j+=2的,那么j做为指标是跳着走的,最开始指向'6',然后'3',然后这一轮结束,下一轮,先指向'2',再指向'4',那么结果就是6324了,


几道C语言题,跪求高手详细帮助
\/\/我写了几个,都经过dev-c调试通过。\/\/第一题:include<stdio.h> include<stdlib.h> int fib(int n){ if(n==1||n==2)return 1;else return(fib(n-1)+fib(n-2));} int main(){ int a[40],i;printf("前40个数为:\\n");for(i=0;i<40;i++){ a[i]=fib(i+1);printf...

一道C语言题目求解,我想知道s,w,t的值分别是怎么得到的
你没有错,每次运算前两个的值都是2,0,但是t的值不是固定的 include"stdio.h"int main(){ int a,b,c;int s,w=0,t;a=-1,b=3,c=3;if(c>0){ s=a+b;\/\/s = 2 } if(a<=0)\/\/a=-1,if条件成立执行 { if(b>0)\/\/if条件不成立,此条语句不执行 { if(c<=0){ w=a-...

C语言题目!!
这个选项错,是因为题目是问“能给字符串正确赋值”的语句,准确说这是给字符数组赋值而非字符串赋值。C选项:char ch[3]="abc";\/\/这是字符串赋值语句,在B中也说了,字符串必须0结尾,但是空间只有3,放入了abc再放不下0了,空间不够,编译就不会通过,所以错了,char ch[4]="abc";就没...

一道C语言题
include<stdio.h> void main(){ union \/\/共用体,大小为8个字节(3个元素中最大的){ int i[2]; \/\/在32位机上共8个字节(32*2=64位)long k; \/\/共4个字节(32位)char c[4]; \/\/共4个字节(8*4=32位)}r,*s=&r;s->i[0]=0x39; \/\/16进制0x39,即10进制57,二进制...

帮忙做一下这道C语言题目。
第四个(即将d)要求和题目有冲突,题目要求输入的是正整数,这个要求是选作的,这里不作。实现本题,使用检测各个位的值是否为1即可,是1时,打印出1,否则打印0。使用循环来检测8个位。以下是在手机上用易历知食软件里的微C程序设计功能编写的一个示例,实现题目中前三个要求。手机上的代码如下图...

一道基础C语言题,求解,最好附上这部分的知识点(通俗易懂点)。_百度知...
知道团队 认证团队 合伙人 企业 媒体 政府 其他组织 商城 手机答题 我的 一道基础C语言题,求解,最好附上这部分的知识点(通俗易懂点)。 C老师语言老师补充的一个知识点,没注意听,现在求高手教导。题目如下:产生动态数组。动态分配了10个整型存储区域,然后进行赋值并打印。拜托帮我写出这个题的答案...

求这个简单的C语言题目答案。急!急!急!
A --b后b是2 a=2+1=3

C语言题目
a'了,a的ASCII码是97,转换成16进制就是1413,这个其实是考察字符串以'\\0'结束的问题,static char x[] ="abcde"; 表示x其实是一个字符串,要求以'\\0'结束,它的长度和{'a','b','c','d','e', '\\0'}; 是一样的,这下就知道选哪个答案了吧。5,这道题实际是考察strcat函数的...

求大神讲一下这个两个C语言题,谢啦
以下每一行表示一个字符:\\t x \\01 8 y z \\0 共7个字节。(答案C)

C语言题目 帮帮忙
k是个二维整型数组,这个容易理解;pk是个一维整型指针数组,存放的内容是一个整型指针,所以B)pk[0]=&k[1][2]; 是正确的,再看其他三个:a:A)pk=k; k是个int *[2][3]的指针而pk是int *[3]的指针,类型不匹配 c:C)pk=k[0]; 同上 d:D)pk[1]=k; pk[1]是整型指针,而...

抚顺市17321997634: 谁知道这个C语言题的输出结果.最好有具体步骤. -
学佳必纳: #include<stdio.h> main() { char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++) p[i]=ch[i]; //以上实现了p[0]="6937" , p[1]="8254" for(i=0;i<2;i++) for(j=0;p[i][j]>'\0';j+=2) s=10*s+p[i][j]-'0'; //以上是个循环嵌套,第一层循环再次,...

抚顺市17321997634: C语言编个计算题,只要输入一个数 ,a方加上b平方输出最后结果就好 -
学佳必纳: #include <stdio.h>int main() {int a=1;int b=1;int sum=1;printf("a=");scanf("%d\n",a);printf("b=");scanf("%d\n",b);sum=a*a+b*b;printf("a平方加上b平方=",sum); }

抚顺市17321997634: C语言的一道输入abc输出最大者 -
学佳必纳: 第一你这程序,只有max函数的申明,没有定义, 第二scanf("%d,%d",%d,&a,&b,&c); 是错误的,反引号"应该在第三个%d后, 应该是scanf("%d,%d,%d",d,&a,&b,&c);

抚顺市17321997634: C语言求输出结果 -
学佳必纳: 楼主你好.p为0x5f00,按%p打印p的话应该是00005F00(32位系统)*p+2为x+2即7.(注意*的优先级比+高,先取值再+2)**&p也就是x为5(*&其实就抵消了)3**p就是3*x为15 p+4是一个地址,按理说应该按照%p来打印,%d打印的话应该是0x5...

抚顺市17321997634: 谁知道这2个C语言的输出结果,要解析下...
学佳必纳: 第一个程序 定义了int型变量a和float型变量b 然后switch语句判断a的值,因为a=2所以执行case 2后的语句,b=b-1所以b的值变为3.0 输出结果: b=3.0 第二个程序 i 参与循环,只要i≤10 就执行循环,所以输出 结果是 1*1=1 2*2=4 3*3=9 ..... 10*10=100

抚顺市17321997634: 求这个简单C语言程序的输出结果和原因,真的很简单的,求帮忙 -
学佳必纳: 这个程序没有任何输出C语言程序都是从main函数开始执行if (1>2) { cout << "World"; } 第一句话是if(1>2),如果1大于2的话,才走...

抚顺市17321997634: C语言求以下程序的输出结果 -
学佳必纳: 答案-2x=- m++,这个运算顺序是 x=-m 然后m++所以x =-3,然后m++ = 4;x= x+8/++n++n ,先+1,后使用,就是n = 5, 8/5 = 1x= x+1 =- 3+1 = -2

抚顺市17321997634: c语言问题:输出两个数之间的所有质数:这个程序应该怎么写最好??? -
学佳必纳: 如果这个程序只处理一对数据的话,用一个循环,一个数一个数地判断.如果说要一次判断多组数据,并且知道这些数据地范围的话,可以先把这个范围里面的所有素数保存起来,然后对每一组数据,都在这个数组中查找满足条件的所有数....

抚顺市17321997634: 谁知道这个C语言题怎么做:输入三个整数x,y,z,请把这三个数由小到大输出 -
学佳必纳: 展开全部#include void main() { int x,y,z; int a[3]; scanf("%d %d %d",&x,&y,&z); a[0]=x; a[1]=y; a[2]=z; int temp; for(int i=0;i<3;i++) { for(int j=i+1;j<3;j++) { if(a[j] { temp=a[j]; a[j]=a[i]; a[i]=temp; } } } printf("%d %d %d",a[0],a[1],a[2]); }

抚顺市17321997634: 会C语言的大神们给我讲讲啊,这道题输出结果为什么是7!!!!!!!!!!!!! -
学佳必纳: while(x++...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网