一道C语言题..知道的说一下 我菜鸟 谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/18 15:21:17
#include<stdio.h>
viod main()
{
int a[10],i,j,t;
for(i=0,i<10,i++)
scanf("%d",&a[i]);....这怎么是&a[i]什么意思
for(j=0,j<9,j++)
for(i=0,i<j-9,i++)
if(a[i]<a[i+1])
{t=a[i],a[i]=a[i+1],a[i+1]=t;}
for(i=0,i<10,i++)
printf("%4d",a[i]);....这怎么是%4d 不是d%
} 这题我同学这样写对不 十个数排列的 要不对纠正一下
再说一下 这个程序对不 要不对那不对 该怎么改

&是取地址符号,在scanf函数中后面必须是变量地址!!

%4d 是为了让输出的数字占4个字节!
同样是1,2,3,4:%d输出的结果是1234
%4d输出结果是1 2 3 4
另外这个是输入10个数 从大到小排列吧!那是对的喽!

&是地址符号 a[i]是数组 当i=0的时候就等于a[0]
%4d 结果以十进制无符号,长度为4的形式输出
这个是输入10个数 从大到小排列吧,对不对用程序试下不就知道了,结果出的来就是对的

错得太多了!

scanf("%d",&a[i]);/*意思是输入一个整形数据依次存入数组a,&是取地址符号。

a[i]在scanf那一行表示数组元素,所以要用&来进行输入,这样符合scanf的定义

&是地址符号 a[i]是数组 当i=0的时候就等于a[0]

%4d 结果以十进制无符号,长度为4的形式输出

先回答到这两个问题,至于对不对的话,就我个人而言要看你想用这个程序达到个什么样的目的。

刚才一哥们,把一程序写得多长,看了半天,有了点初步了解,一交谈,才知道他的程序根本就是复杂化了,从开头一直错到尾!