测试题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <stdio.h> // 声明 void IntCount(int num); // 入口函数 int main(int argc, const char * argv[]) { // 判断正整数的位数 int num; printf("请输入一个正整数:"); scanf("%d",&num); IntCount(12345); return 0; } // 判断正整数的位数 void IntCount(int num) { int count = 0; // 位数 while (num > 0) { num = num/10; count += 1; } printf("%d\n", count); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <stdio.h> int main(int argc, const char * argv[]) { // 打印100以内被10整除的正整数 int i = 1; while (i < 100) { if (i % 10 == 0) { printf("%d\n",i); } i ++; } return 0; } ========== 10 20 30 40 50 60 70 80 90
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #define MAX(a,b) ((a>b) ? a:b) #define MIN(a,b) ((a<b) ? a:b) int main(int argc, const char * argv[]) { int start_1,end_1; int start_2,end_2; printf("请输入第一个闭区间(逗号分割):"); scanf("%d,%d",&start_1,&end_1); printf("请输入第二个闭区间(逗号分割):"); scanf("%d,%d",&start_2,&end_2); if (MIN(end_1, end_2) < MAX(start_1, start_2)) { printf("不重叠"); }else { printf("重叠"); } return 0; }
闰年的定义:能被400整除的年份为闰年;能被4整除同时不能被100整除的年份是闰年
闰年一年有366天,2月份有29天 平年一年有365天,2月份有28天
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 // 判断闰年 void is_leap_year(int year){ if (year%400==0 || (year%4==0 && year%100!=0)) { printf("%d年是闰年\n",year); }else{ printf("%d年不是闰年\n",year); } } int main(int argc, const char * argv[]) { // 判断闰年 int year; printf("请输入年份:"); scanf("%d",&year); is_leap_year(year); return 0; }
打印邮费价格表,输出20kg以内物品的邮费价格表,邮费计算规则如下:
注:逗号运算符与表达式小知识 1.逗号运算符的优先级是所有运算符中最低的 2.整个逗号表达式的值为其中最后一个子表达式的值 3.逗号运算符常用在for循环头部初始化或递增多个变量
1 2 3 4 5 6 7 8 9 10 11 12 #define FIRST_COST 6 #define NEXT_COST 2 int main(int argc, const char * argv[]) { int weight,cost; printf("重量\t价格\t\n"); for (weight=1,cost=FIRST_COST;weight<=10;++weight,cost=FIRST_COST+(weight-1)*NEXT_COST) { printf("%d\t¥%d\n",weight,cost); } return 0; }
1 2 3 4 5 6 7 8 9 int main(int argc, const char * argv[]) { int a,b,c,max; printf("请输入3个整数:"); scanf("%d,%d,%d",&a,&b,&c); max = c>((a>b)?a:b) ? c:((a>b)?a:b); printf("3个数中的最大值是:%d\n",max); return 0; }
定义并初始化一个整型数组(未显示指定数组长度),循环输出数组中每个元素。在完成以上任务的过程中,为了得到数组的长度,需要借助sizeof运算符?
小知识: 1.sizeof在使用的时候看上去像是一个函数(因为后面有一对小括号),但他是一个运算符。它的使用方法有以下三种: a)sizeof(变量名) b)sizeof(数据类型名) c)sizeof 变量名 2. sizeof的返回值类型是size_t
1 2 3 4 5 6 7 8 9 10 int main(int argc, const char * argv[]) { int arr[]={1,2,3,4,5}; size_t len = sizeof(arr)/sizeof(arr[0]); size_t i; for (i=0; i<len; ++i) { printf("%d\n",arr[i]); } return 0; }
根据运算符优先级及求职顺序,使程序输出结果为2,3,1
1 2 3 4 5 6 7 8 9 10 int main(int argc, const char * argv[]) { int x,y,z; printf("请输入2个整数:"); scanf("%d,%d",&x,&y); z=x++,++y,y++; printf("%d,%d,%d\n",x,y,z); return 0; }