二维数组的一些问题
题1:有以下程序,假设程序经编译,连接后生成可执行文件,若输入命令行exam 123则运行结果为?(这个题目中我搞不懂他输入exam 123,存放到argc和char中的分别是什么?)
main(int argc,char *argv[])
{
int n,i=0;
while(argv[1][i]!='\0')
{ n=fun();i++;}
printf("%d\n",n*argc);
}
int fun()
{
static int s=0;
s+=1;
return s;
}
题2:以下程序运行后的结果是?
(这个题目中&aa[3]是什么意思,求解)
#include <stdio.h>
void sort(int a[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[i]=t;}
}
main()
{
int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&aa[3],5);
for(i=0;i<10;i++)
printf("%d",aa[i]);
printf("\n");
}
题3:以下程序的输出结果是?
(这个题目,我自己算了一下,我自己的答案是1256,现在问问高手们怎么算,我觉得我算错了。)
#include <stdio.h>
main()
{ char ch[7]={"123456"};
int i,s=0;
for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2)
s=10*s+ch[i]-'0';
printf("%d\n",s);
}