我是一个C语言的初学者 想请高手帮我解决一下 谢谢! 有哪位C语言高手可以帮一下我????????????????...

作者&投稿:照炕 (若有异议请与网页底部的电邮联系)
第一个我不清楚,第二个是自加的问题,加号在前表示先自加再运算,第一个也就是2*3,第二个是6*7

第二个问题:a初值=1,而++a*++a计算顺序是从右做到左,++a是先自增,后运算,所以b=3*2=6.00000(因为定义为float)
第三个问题,同理,不讲了 。
第一问题“5%-3 ”,不怎么清楚,%是求余运算,没见过除数是负数的

求余的规则是看被除数的符号,即被除数为正数那么不管除数是正是负,余数都是正数,第一个程序答案是9,++优先级高,先运行2个++,a=3,3×3=9,你的答案是错的,如果答案是6的话b=(++x)*(++x),第二题同上

第一题:%求余运算,5%-3商-1,-1*-3=3,余下2,所以结果为2;同样-5%-2商2余-1,结果应是-1.
第二题:a=1,++a相当于a=a+1=2,此时a的值已经为2了,所以后面的++a=3了b=2*3=6,++的运算级比*高.6.000000是因为数据类型为float.
第三题:和上一题一样,只不过数据类型为int,整数型所以返回的是整数42.

C语言初学 请高手帮我解决下问题 谢谢!~

#include
void main()
{
int a;
printf("输入今天星期几:");
scanf("%d",&a);
if((a7)) \\这里用"||"表示有一个为真都执行\\
{printf("请输入位于1-7之间的数:
");
scanf("%d",&a);} \\这里应重新输入\\
if((a==6)||(a==7)) \\这里用"=="表示相等\\
printf("周末愉快
");
if(a<=5)
printf("工作日愉快
");
}
程序运行过了!

#include

char *strlwr(char *s)
{
int i;

for(i=0;s[i]!='\0';i++)
{
if(s[i]>='A' && s[i]<='Z')
s[i] = s[i] + 32;
}

return s;
}

void main()
{
char s[300];

scanf("%s",s);
strlwr(s);
printf("%s",s);

}