C语言小测1

C语言小测1

  1. 编程实现输入一个字符,当该字符为a时输出apple,当该字符为b时输出
    banana,当该字符为c时输出cat,否则输出no
#include <stdio.h>
#include <string.h>
int main() {
	char ch=getchar();
	switch(ch){
	case 'a':
		printf("apple\n");
		break;
	case 'b':
		printf("banana\n");
		break;
	case 'c':
		printf("cat\n");
		break;
	default:
		printf("no\n");
	}
	return 0;
}
  1. 输入一个年份n ,和一个月份m,闰年的定义参考百度百科/维基百科,输出这个月份有多少天。
#include <stdio.h>
int main() {
	int n,m;
    scanf("%d%d",&n,&m);
	switch(m){
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			printf("31\n");
			break;
		case 2:
			if(n%4==0&&n%100!=0||n%400==0)
				printf("29\n");
			else
				printf("28\n");
			break;
	default:
		printf("30\n");
	}
	return 0;
}
  1. 给一个正整数n,计算它最多能被2的多少次幂整除
#include <stdio.h>
int main() {
	int n,i=0;
    scanf("%d",&n);
	while(n%2==0){
		n=n/2;
		i++;
	}
	printf("%d\n",i);
	return 0;
}
  1. 输入一个正整数n(3<=n<=100000) 输出3, 6, 9, …,即输出所有<=n的,3的倍数。
    从小到大依次输出,只考虑3的正整数倍。 每行一个数字。
#include <stdio.h>
int main() {
	int n,i=3;
    scanf("%d",&n);
	for(i;i<=n;i++)
		if(i%3==0)
			printf("%d\n",i);
	return 0;
}
  1. 如果一个数字的十进制表示中有7,我们就认为他是幸运数字。
    输入一个数字n(1 <= n <= 10^9)
    判断n是否是一个幸运数字,如果是的话输出"Yes",否则输出"No"
#include <stdio.h>
int main() {
	int n,m,i,j=0;
    scanf("%d",&n);
	m=n;
	while(m!=0){
		m=m/10;
		++j;
	}
	for(i=1;i<=j;i++)
	{
		if(n%10==7){
			printf("Yes\n");
			break;
		}else if(i==j){
			printf("No\n");
			break;
		}else
			n=n/10;
	}
	return 0;
}
  1. 输入一个整数n(n <= 10000)。随后输入n个整数。输出这n个整数中的最小值。
#include<stdio.h>
int main()
{
	int x,i,n,min;
	scanf("%d",&n);
	scanf("%d",&x);
	min=x;
	for(i=1;i<n;i++)
	{
		scanf("%d",&x);
		if(x<min)
			min=x;
	}
	printf("%d\n",min);
	return 0;
}
  1. 输入一个长度为n(1 <= n <= 100000)数组,输出他的最大值和最小值。
    数组中的元素ai满足(-2147483648 <= ai <= 2147483647)。
#include<stdio.h>
int main()
{
	int x,i,n,min;
	scanf("%d",&n);
	scanf("%d",&x);
	min=x;
	for(i=1;i<n;i++)
	{
		scanf("%d",&x);
		
		if(x<min)
			min=x;
	}
	printf("%d\n",min);
	return 0;
}
发布了39 篇原创文章 · 获赞 4 · 访问量 714

猜你喜欢

转载自blog.csdn.net/weixin_44718794/article/details/103430907