这段C程序输入一个数100,输出结果为n=5050a=10,求讲解a为什么为10?
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/07/08 14:12:13
这段C程序输入一个数100,输出结果为n=5050a=10,求讲解a为什么为10?
int s(int n)
{
int i;
for(i=n-1;i>=1;i--)
n=n+i;
printf("n=%d",n);
getchar();
}
main()
{
int a;
printf("input number\n");
scanf("%d",&a);
a=s(a);
printf("a=%d",a);
getchar();
}
int s(int n)
{
int i;
for(i=n-1;i>=1;i--)
n=n+i;
printf("n=%d",n);
getchar();
}
main()
{
int a;
printf("input number\n");
scanf("%d",&a);
a=s(a);
printf("a=%d",a);
getchar();
}
这个原因很简单,
就是你的int s(int n)没有用return 语句,而函数默认的返回值,就是最后一个语句的返回值,而getchar的返回值是得到的char的转换为int型返回.
int s(int n)函数里面的getchar得到的是输入100后留下的回车'\n',
其int值为10.
而a = s(a);
所以输出的a是10,希望能看懂.
就是你的int s(int n)没有用return 语句,而函数默认的返回值,就是最后一个语句的返回值,而getchar的返回值是得到的char的转换为int型返回.
int s(int n)函数里面的getchar得到的是输入100后留下的回车'\n',
其int值为10.
而a = s(a);
所以输出的a是10,希望能看懂.
若a、b、c均为int型变量,则执行以下程序段后的输出结果为( ). b=(a=10,a+5,c=10)
int a=11,b=2;,执行下述程序段后,输出结果为__________.
编写一个Matlab函数文件,输入变量为一个n阶正定矩阵A,输出的结果为下三角矩阵L,满足A=LLT
看看这段vb程序哪里错了(已知一元一次方程为AX+B=0,设计一个程序,当用户输入A和B的值,输出X值,界面如
利用VB设计一个程序:输入一个大于10的正整数n,计算sum=1+3+5+…(2n+1),编写程序输出计算结果sum
在vb中.输入a= 10 and 7.输出结果为2.求这个式子的意义、式子中and的意义、和结果2的意义.
一个程序计算图,若开始输入的数字为-10,则输出的结果为多少
在执行以下程序时,为了使输出结果为 t=4 ,则给 a 和 b 输入的值应满足的条件是( )
求下列程序输出结果#includevoid main(){int a=3;printf("%d\n",(a+=a-=a*
在vb中逻辑运算符and的意义 为什么输入a= 10 and 7是输出结果为2 这个求这个式子及式子中and以及2的意义
文文设计了一个关于实数运算的程序,按此程序,输入一个数后,输出的数比输入的数的平方小1,若输入7,则输出的结果为( )
运行以下程序后,如果从键盘上输入china#,则输出结果为 :A、2,0 B、5,0 C、5,5 D、2,5