我正在制作一个IF语句,如果插入的数字以零结尾,我希望发生一些事情。以下不起作用:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int year;
printf("Skriv in ditt födelseår\n");
scanf("%d", &year); printf("Du är %d", 2013 - year); printf(" år gammal");
if ( 2013 - year.endsWith('0') ) {
printf("Grattis, du fyller jämnt iår!\n");
}
return 0;
}
所以,如果2003年的结果 - 年(用户输入的年份)以零结尾,我想打印一些东西。我如何使它工作?
答案 0 :(得分:9)
查看结果是否可以除10
而没有余数:
if ( ( 2013 - year ) % 10 == 0 ) {
printf("Grattis, du fyller jämnt iår!\n");
}
答案 1 :(得分:0)
你正在从控制台输入读取年份,如果输入以0结尾,你想要的东西比你不应该测试(2013年)。 假设您输入2013(不会以0结尾)
if ( 2013 - year.endsWith('0') ) {
printf("Grattis, du fyller jämnt iår!\n");
}
将打印您在那里的消息。因为你正在测试年份之间的差异。
我认为您需要将条件重写为
if (year.endsWith('0') ) {
printf("Grattis, du fyller jämnt iår!\n");
}
OR
if ( year % 10 == 0 ) {
printf("Grattis, du fyller jämnt iår!\n");
}
无论你喜欢什么。我没有看到从2013年减去年份的重点。