一个很简单我却想不出来的c语言改错问题……

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:06:28
//第二章:C语言基本知识:“请修改下面的程序,使其能够正确运行。”
void main()
{
float f=7.12;
char c="c";
printf("%d\n",int(f%3));
printf("%c",c);
}

请高人指点啊!下午就回!

正确的如下
void main()
{
float f=7.12;
char c='c';
printf("%d\n",(int)f%3);
printf("%c",c);
}
字符是单引号char c='c'
字符串是双引号char c[]="abc"
除号是/
%是求余数, 只能对整型运算
强制转换要加括号(int)

f%3是不是这个不对 不能对FLOAT类型取余

printf("%d\n",int(f%3));
to
printf("%d\n",(int)f%3);

char c="c";
应该是

char c='c';

String定义的还是双引号。。。

char是单引号

/*稍作修改,相信你能通过对比以后会看明白的.朋友.*/
void main()
{
float f=7.12;
char c='c';
printf("%d\n",((int)f)%3);
printf("%c",c);
}

char c="c"改成 char c='c'
printf("%d\n",int(f%3)); 改成 printf("%d\n",(int)f%3);
按照题改完 输出 结果就是
1
c