时间:2022-12-11 11:54:11 | 栏目:C代码 | 点击:次
编写逻辑表达式判断用户给定的年份是否是闰年,年份可以被4整除但不能被100整除;年份可以被400整除。
#include <stdio.h> int main(){ int year = 0 ,res = 0; printf("请输入年份数字:"); scanf("%d",&year); res = (!(year % 400)) || (!(year % 4) && (year % 100)); printf("计算结果是%d\n",res); // 1是闰年 0不是 return 0; }
利用三目表达式,输入一个数字,输出其绝对值
#include <stdio.h> int main(){ int num = 0; printf("请输入一个数字:"); scanf("%d",&num); num = num < 0 ? 0 -num : num; // 三目表达式 printf("绝对值是:%d\n",num); return 0; }
从键盘获取一个字母,如果是小写,则输出转换为大写
#include <stdio.h> int main(){ char ch = 0; printf("请输入一个字母:"); scanf("%c",&ch); ch = 'a' <= ch && ch <= 'z' ? ch - 'a' + 'A' : ch; printf("转换结果为%c\n",ch); return 0; }
用户输入一个表达式,输出结果。(三目表达式的嵌套)
只考虑 加法,减法,乘法
#include <stdio.h> int main(){ char ch = 0; int num = 0,num1 = 0; printf("请输入一个表达式:"); scanf("%d%c%d" ,&num, &ch, &num1); num = ch == '+' ? num + num1 : ch == '-' ? num - num1: num * num1; printf("计算结果是%d\n",num); return 0; }
如果一个表达式中包含多个不同类型的数据,则必须首先把他们转换为同一类型然后才能计算。这个转换过程由计算机自动完成,叫做隐式类型转换。
隐式类型转换中把占地小的数据转换成占地大的类型。 当多个数据所占大小一样的时候把整数转换成浮点数,把有符号数转换成无符号数。
#include <stdio.h> int main(){ printf ("大小是%d\n",sizeof(1 ? 1 : 0.9)); // 这个1已经变为double类型 printf("-7 + 3 > 0 是 %d\n", -7 + 3 > 0); // -4 printf("-7 + 3u > 0 是 %d\n", -7 + 3u > 0); // -7 转换为无符号整型 return 0; }