【C语言】三道简单程序题(附注释)(某高校期中测试题)

请你编程实现:从键盘上随意输入一个算术运算式(可以是加、减、乘、除中的任意一种),然后你编写的程序要能判断出这个算术运算是否正确,正确显示“yes”,错误显示“no”。比如:从键盘上输入“3+2=5↙”,则屏幕上显示“yes”;从键盘上输入“3*2=5↙”,则屏幕上显示“no”。

#include<stdio.h>
int add(int a,int b);
int sub(int a,int b);
int mul(int a,int b);
int div(int a,int b);

int add(int a,int b)//定义add(),计算a+b 
{
	return (a + b);
}
int sub(int a,int b)//定义sub(),计算a-b
{
	return (a - b);
}
int mul(int a,int b)//定义mul(),计算a*b
{
	return (a * b);
}
int div(int a,int b)//定义div(),计算a/b
{
	return (a / b);
}
 
int main()
{
	int a,b,c;
	char op;
	printf("please input:");
	scanf("%d%c%d=%d",&a,&op,&b,&c);//为a,b,c,op赋初值 
//如果输入的结果c等于a与b计算得到的结果,则输出yes,否则输出no 
//此处程序简单的用if判断结果是否相等,但是还有如 2+2=4这种特殊情况未能处理 
	if(c == add(a,b)||sub(a,b)||mul(a,b)||div(a,b)) 
		printf("yes");
	else 
		printf("no");
	
	return 0;
}

请你编程实现:从键盘上输入任意多个学生的单科百分制成绩,当输入了一个不合法的成绩时,程序不再接收输入数据,统计并输出以下信息:

  1. 录入了多少个学生的单科成绩;
  2. 所有成绩中的最高分、最低分、平均分分别是多少;
  3. 不及格人数有多少。
    要求:不得使用数组或者动态内存分配函数来实现。
#include<stdio.h>
int main()
{
	int n,i=1,m=0,sum=0,max=0,min=0,ave=0,f=0;
	printf("Please input the number of the score:");
	scanf("%d",&n);
	printf("Please input the score:");
	scanf("%d",&m);
	sum=max=min=m;
	while(i<n){
		scanf("%d",&m);
		sum=sum+m;		//根据要求不用数组和动态内存分配函数,则使用计数变量 
		i++;
		if(m>max){//迭代法,使max一直为最大值 
			max=m;
		}
		if(m<min){//迭代法,使max一直为最小值
			min=m;
		}
		if(m<60){//判断是否不及格,人数累加 
			++f;
		}
		ave=sum/n;//得到平均数 
	}
	printf("The total,average,maximum and minimum of the scores are:%d %d %d %d \n",n,ave,max,min);
	printf("failed students number is%d",f);
	return 0;
}

请你编程实现:从键盘上任意输入一个正整数x,判断它是否为同构数。若是同构数,就在屏幕上显示输出“Yes”,若不是则输出“No”。一个数如果出现在它的平方数的右边,这个数就是同构数。比如:5出现在它的平方数25的右边,25出现在它的平方数625的右边,因此5和25都是同构数。

#include <stdio.h>
int tg(int n)//定义tg函数,判断输入的x是否为同构数 
{
   int flag=10,m;
 
   if(n==flag)
   {
     flag=flag*10;
   }
   
   m=n*n;
   
   if(m%flag==n)
	   return 1;
   else 
	   return 0;
 
}

int main()
{
	int x;
	printf("please input x:");
	scanf("%d",&x);
	if(tg(x)==1) //若是同构数,输出yes,否则,输出no 
	printf("yes");
	else 
	printf("no"); 
 	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_44621510/article/details/90140036