24题
本帖最后由 晨曦到日暮 于 2018-1-15 21:06 编辑24.编写程序,计算1~100中能被5整除的所有数的和。要求定义并调用函数div(n),当n能被5整除时返回1,否则返回0。
#include<stdio.h>
#include<math.h>
int main()
{
int i,sum;
sum=0;
for(i=0;i<=100;i++)
{
if(i/5==0)
sum+=i;
return 1;
else if
return 0;
}
printf("1~100中能被5整除的所有数的和为:%d",&sum);
}
C:\Users\Administrator\Desktop\Cpp1.cpp(12) : error C2181: illegal else without matching if
C:\Users\Administrator\Desktop\Cpp1.cpp(13) : error C2059: syntax error : '}'
Error executing cl.exe. 函数不是这样写的
printf里面后面的变量前面不要加& BngThea 发表于 2018-1-15 21:19
函数不是这样写的
printf里面后面的变量前面不要加&
谢谢提醒{:10_256:} 你的另一个求助贴也是这个问题,printf和scanf不同,scanf需要知道变量的地址,将输入的数据放入该地址中,所以参数是加取变量地址的&a, 而printf是直接从变量获取值,所以一般直接用变量名a就好了,当然,如果是数组字符串之类的,例如a, printf("&s", a);这里还是用变量名,虽然这个变量也是地址。这里要好好区分一下 还有问题嘛,没有的话麻烦采纳{:5_110:} C:\Users\Administrator\Desktop\Cpp1.cpp(12) : error C2181: illegal else without matching if
C:\Users\Administrator\Desktop\Cpp1.cpp(13) : error C2059: syntax error : 'return'
Error executing cl.exe.
#include<stdio.h>
#include<math.h>
int main()
{
int i,sum;
sum=0;
for(i=0;i<=100;i++)
{
if(i/5==0)
sum+=i;
return 1;
else if
return 0;
}
printf("1~100中能被5整除的所有数的和为:%d",sum);
} 晨曦到日暮 发表于 2018-1-15 21:45
C:%users\Administrator\Desktop\Cpp1.cpp(12) : error C2181: illegal else without matching if
C:%user ...
#include<stdio.h>
#include<math.h>
int div(int n)
{
if (n % 5 == 0)
return 1;
return 0;
}
int main()
{
int i,sum;
sum=0;
for(i=0;i<=100;i++)
{
if (div(i))
sum += i;
}
printf("1~100中能被5整除的所有数的和为:%d",sum);
return 0;
} BngThea 发表于 2018-1-16 09:04
谢谢{:10_297:}
页:
[1]