2021级C语言第一次过程考核

2021级C语言第一次过程考核

    • 1.字符转换
    • 2.两个数交换
    • 3.整数的按权展开
    • 4.判断输入字符类型
    • 5.判断闰年
    • 6.计算加油费
    • 7.输入两个整数a和b,编程求a到b的所有数字之和?
    • 8.编程求1到n中的所有能同时被3和5整除的数之和?
    • 9.整数的位数
    • 10.输出图形

1.字符转换

从键盘输入一个小写字母,把它转换成相应的大写字母,最后输出转换之后的字符及其十进制ASCII码。
在这里插入图片描述

#include
int main()
{char c;scanf("%c",&c);printf("%c %d",c-32,c-32);return 0;
}

2.两个数交换

试编写一个程序,从键盘输入变量x和y的值,将它们打印(显示到屏幕)出来;然后将二者的值进行交换,并打印交换后的x、y值。例如,x和y的输入值分别是1和2,交换后,x的值为2而y的值为1。 提示:要将变量x和y的值交换,应定义并使用临时变量temp:先将x的值存放到临时变量temp中,然后将y的值存放到x中,最后将temp中的值存放到y中。
在这里插入图片描述

#include
int main()
{int x,y,temp;scanf("%d %d",&x,&y);temp=x;x=y;y=temp;printf("%d %d",x,y);return 0;
}

3.整数的按权展开

本题目要求读入一个三位整数,然后写成按权展开的形式。
在这里插入图片描述

#include
int main()
{int n,a,b,c;scanf("%d",&n);a=n/100;n%=100;b=n/10;c=n%10;printf("%d=%d+%d+%d",a*100+b*10+c,a*100,b*10,c);return 0;
}

4.判断输入字符类型

题目要求读入一个英文字母,然后判断其如果是大写字母则转换为对应的小写字母,如果是小写字母则无需转换;最后输出结果。 如果输入的是非英文字符则输出“Non-English Characters”提示。
在这里插入图片描述

#include
int main()
{char c;scanf("%c",&c);if(c<='z'&&c>='a'){printf("%c",c);}else if(c>='A'&&c<='Z'){printf("%c",c+32);}else{printf("Non-English Characters");}return 0;
}

5.判断闰年

已知能被 4 整除但不能被 100 整除或者能被 400 整除的年份是闰年。请编程判断一个年份是否是闰年。
在这里插入图片描述

#include
int main()
{int year;scanf("%d",&year);int n=0;if(year%100==0){if(year%400==0){n=1;}}else if(year%4==0){n=1;}if(n==1){printf("%d is a leap year.",year);}else{printf("%d is not a leap year.",year);}return 0;
}

6.计算加油费

在这里插入图片描述

#include
int main()
{int N;double L,price;scanf("%d %lf",&N,&L);switch(N){case 92:price=L*6.86;printf("%.2lf",price);break;case 95:price=L*7.45;printf("%.2lf",price);break;case 98:price=L*8.16;printf("%.2lf",price);break;default:printf("Not available!");}return 0;
}

7.输入两个整数a和b,编程求a到b的所有数字之和?

在这里插入图片描述

#include
int main()
{int a,b,min,max,sum;scanf("%d %d",&a,&b);if(a<b){min=a;max=b;}else{min=b;max=a;}for(sum=0;min<=max;min++){sum+=min;}printf("%d",sum);return 0;
}

8.编程求1到n中的所有能同时被3和5整除的数之和?

在这里插入图片描述

#include
int main()
{int n,sum;scanf("%d",&n);for(sum=0;n>=15;n--){if(n%15==0){sum+=n;}}printf("%d",sum);return 0;
}

9.整数的位数

在这里插入图片描述

#include
int main()
{int n,cnt;scanf("%d",&n);for(cnt=1;n>=10;cnt++){n/=10;}printf("%d",cnt);return 0;
}

还有一种方法:

#include 
#include 
int main()
{int n,cnt;scanf("%d",&n);cnt=log10(n)+1;printf("%d",cnt);return 0;
}

10.输出图形

输入一个正整数n,输出一个按以下规律变化的n行的直角三角形,每个数据都采用6个域宽左对齐的方式显示。
在这里插入图片描述

#include
int main()
{int n,m,x,y,cnt;scanf("%d",&n);m=n;for(y=1;y<=n;y++){for(x=1;x<=y;x++){printf("%-6d",x*y);}printf("\n");}return 0;
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部