#include<stdio.h>
int main()
{
int m,n,a,s;
scanf("%d",&n);
while(n--){
s=0;
scanf("%d",&m);
for(int i=0;i<m;i++){
scanf("%d",&a);
s+=a;
}
printf("%d\n",s);
}
}
不明白这里的while(n--)表示什么意思,while后面的括号里面不应该都是表示判断的语句吗比如n>=10之类的,这里的是什么意思不明白😣
while(n--) ,两句并一句:while(n>0) {..... ; n--}
相当于while(n) { n--; 执行循环体}
while(n) 如果n等于0,结束循环,其他的都为1,继续循环
while和if里面的条件正常来说都应该是布尔值,
但是c语言里值类型之间可以隐式转换
int转bool的规则是:0=false,非0=true
char转int的规则是:取ascii码
char转bool的规则是:先转int再转bool