1. 问个c语言的小题,解析,谢谢
您好,很高兴回答您的问题。
在c语言中,有一些本程序设计语言的法则,比如说整数除以整数得到的结果就是整数,所以10/3的结果就是3,不会是3.333,而且输出的数据类型也是整数类型,那么输出的最后结果就是3,那么结果很明显就是D。
2. c语言问题,请给出详细的解析,谢谢
main()
{ 
char a[5][10]={"one","two","three","four","five"}; 
int i,j; 
char t; 
for(i=0;i<4;i++)    //当i = 0;j = 1时  a[0][0]为o, a[1][0]为t,
    for(j=i+1;j<5;j++)     
        if(a[i][0]>a[j][0])    //单词首字母排序  小的向前移动
        { 
            t=a[i][0]; 
            a[i][0]=a[j][0]; 
            a[j][0]=t; 
        } 
        puts(a[1]); 
}
第一次j交换结果:
{"fne","two","three","oour","five"}; 
第二次交换结果:
{"fne","fwo","three","tour","oive"}; 
第三次交换结果:
{"fne","fwo","ohree","tour","tive"}; 
第四次交换结果:
{"fne","fwo","ohree","tour","tive"}; 
结果a[1] 为fwo
3. c语言问题求解
- 答案 - ①x>=0 ②x < amin 
- 为什么x同时赋给amin和amax? - 并不是同时赋给amin和amax,每次只能执行一个if分支。对于每一次循环只能是要么执行amax=x,要么执行amin=x。只不过是一个while循环判断输入的这个数字是不是最大值或者最小值而已,这样一次循环办能两个事情,方便。不可能出现一个数既比最大值要大还比最小值最小。不明白可以往下看。 
- 解析 - 这个题让找出所输入的一组数据中的最大值和最小值。这个题的思路是使用了打擂台算法。打擂台算法就是可以解决最大值和最小值问题。算法思路:默认设置所输入的第一个数字就是最大值。其后,对于每次输入的数字都和最大值进行比较,如果说当前值都比最大值都大了,那么这个值就新的最大值。最小值也一样:设置第一个数为最小值,对其后的每一个数字都和这个默认最小值进行比较,如果当前值都比最小值都还小了,那么这个值就是新的最小值。所以会有这两条语句: 
- if(x>amax)amax=x; 上面就是比较语句,对于所输入的数值,和amax最大值比较,如果比最大值要大,就把当前值x赋予给amax,此时最大值被更新了。第二如果x比最小值都要小,就把当前x赋予给amin,此时最小值被更新了。所以这里并不是说x同时赋给了amax和amin,这个两个if语句每次循环只能走一个。如果还不明白自己可以拿笔拿纸画一画,一画就明白。
 if(x<amin)amin=x;
4. C语言选择题,求详解
应该选B。
程序结果:

解析:
- *p 表示p是一个储存地址的变量 
- 在这个程序中当运行完p=a;时,*p为"1",*p++也为"1" 
- *p++和*(p++)相同 
- printf的运行顺序是从左到右 
- *p++是把*p存储的地址+1,而p的存储地址是数组的第一个,所以相当于把p的指针往后移一位,也就是说把p指向的数组的位置往后移一位。所以就是321 
5. 一道c语言选择题需要详细解析
第一个式子:a + b  = 8 , a - b = 2 ,前者!= 后者,正确,所以为真,输出1
第二个式子:先算括号里的, y -= 6.1 = 0.4 , x <= 0.4,错误,所以为假,输出0
答案选:A
